From f46fe99c7c361a66c68987b22d235fe9f793fad6 Mon Sep 17 00:00:00 2001 From: Hans Hagen Date: Wed, 17 Jun 2020 19:59:19 +0200 Subject: 2020-06-17 18:59:00 --- tex/context/base/mkiv/lxml-ini.lua | 230 +++++++++++++++++++------------------ 1 file changed, 116 insertions(+), 114 deletions(-) (limited to 'tex/context/base/mkiv/lxml-ini.lua') diff --git a/tex/context/base/mkiv/lxml-ini.lua b/tex/context/base/mkiv/lxml-ini.lua index 348ecbbe4..f9ba96ece 100644 --- a/tex/context/base/mkiv/lxml-ini.lua +++ b/tex/context/base/mkiv/lxml-ini.lua @@ -21,120 +21,122 @@ local implement = interfaces.implement -- lxml.id -implement { name = "lxmlid", actions = lxml.getid, arguments = "string" } - -implement { name = "xmldoif", actions = lxml.doif, arguments = "2 strings" } -implement { name = "xmldoifnot", actions = lxml.doifnot, arguments = "2 strings" } -implement { name = "xmldoifelse", actions = lxml.doifelse, arguments = "2 strings" } -implement { name = "xmldoiftext", actions = lxml.doiftext, arguments = "2 strings" } -implement { name = "xmldoifnottext", actions = lxml.doifnottext, arguments = "2 strings" } -implement { name = "xmldoifelsetext", actions = lxml.doifelsetext, arguments = "2 strings" } - -implement { name = "xmldoifempty", actions = lxml.doifempty, arguments = "2 strings" } -implement { name = "xmldoifnotempty", actions = lxml.doifnotempty, arguments = "2 strings" } -implement { name = "xmldoifelseempty", actions = lxml.doifelseempty, arguments = "2 strings" } -implement { name = "xmldoifselfempty", actions = lxml.doifempty, arguments = "string" } -- second arg is not passed (used) -implement { name = "xmldoifnotselfempty", actions = lxml.doifnotempty, arguments = "string" } -- second arg is not passed (used) -implement { name = "xmldoifelseselfempty", actions = lxml.doifelseempty, arguments = "string" } -- second arg is not passed (used) - ---------- { name = "xmlcontent", actions = lxml.content, arguments = "string" } ---------- { name = "xmlflushstripped", actions = lxml.strip, arguments = { "string", true } } - -implement { name = "xmlall", actions = lxml.all, arguments = "2 strings" } -implement { name = "xmlatt", actions = lxml.att, arguments = "2 strings" } -implement { name = "xmlattdef", actions = lxml.att, arguments = "3 strings" } -implement { name = "xmlattribute", actions = lxml.attribute, arguments = "3 strings" } -implement { name = "xmlattributedef", actions = lxml.attribute, arguments = "4 strings" } -implement { name = "xmlbadinclusions", actions = lxml.badinclusions, arguments = "string" } -implement { name = "xmlchainatt", actions = lxml.chainattribute, arguments = { "string", "'/'", "string" } } -implement { name = "xmlchainattdef", actions = lxml.chainattribute, arguments = { "string", "'/'", "string", "string" } } -implement { name = "xmlchecknamespace", actions = xml.checknamespace, arguments = { "lxmlid", "string", "string" } } -implement { name = "xmlcommand", actions = lxml.command, arguments = "3 strings" } -implement { name = "xmlconcat", actions = lxml.concat, arguments = "3 strings" } -- \detokenize{#3} -implement { name = "xmlconcatrange", actions = lxml.concatrange, arguments = { "string", "string", "string", "string", "string" } } -- \detokenize{#5} -implement { name = "xmlcontext", actions = lxml.context, arguments = "2 strings" } -implement { name = "xmlcount", actions = lxml.count, arguments = "2 strings" } -implement { name = "xmldelete", actions = lxml.delete, arguments = "2 strings" } -implement { name = "xmldirect", actions = lxml.direct, arguments = "string" } -implement { name = "xmldirectives", actions = lxml.directives.setup, arguments = "string" } -implement { name = "xmldirectivesafter", actions = lxml.directives.after, arguments = "string" } -implement { name = "xmldirectivesbefore", actions = lxml.directives.before, arguments = "string" } -implement { name = "xmldisplayverbatim", actions = lxml.displayverbatim, arguments = "string" } -implement { name = "xmlelement", actions = lxml.element, arguments = "2 strings" } -- could be integer but now we can alias -implement { name = "xmlfilter", actions = lxml.filter, arguments = "2 strings" } -implement { name = "xmlfilterlist", actions = lxml.filterlist, arguments = "2 strings" } -implement { name = "xmlfirst", actions = lxml.first, arguments = "2 strings" } -implement { name = "xmlflush", actions = lxml.flush, arguments = "string" } -implement { name = "xmlflushcontext", actions = lxml.context, arguments = "string" } -implement { name = "xmlflushlinewise", actions = lxml.flushlinewise, arguments = "string" } -implement { name = "xmlflushpure", actions = lxml.pure, arguments = "string" } -implement { name = "xmlflushspacewise", actions = lxml.flushspacewise, arguments = "string" } -implement { name = "xmlflushtext", actions = lxml.text, arguments = "string" } -implement { name = "xmlfunction", actions = lxml.applyfunction, arguments = "2 strings" } -implement { name = "xmlinclude", actions = lxml.include, arguments = { "string", "string", "string", true } } -implement { name = "xmlincludeoptions", actions = lxml.include, arguments = "4 strings" } -implement { name = "xmlinclusion", actions = lxml.inclusion, arguments = "string" } -implement { name = "xmlinclusionbase", actions = lxml.inclusion, arguments = { "string", false, true } } -implement { name = "xmlinclusions", actions = lxml.inclusions, arguments = "string" } -implement { name = "xmlindex", actions = lxml.index, arguments = "3 strings" } -- can be integer but now we can alias -implement { name = "xmlinlineverbatim", actions = lxml.inlineverbatim, arguments = "string" } -implement { name = "xmllast", actions = lxml.last, arguments = "2 strings" } -implement { name = "xmllastatt", actions = lxml.lastatt } -implement { name = "xmllastmatch", actions = lxml.lastmatch } -implement { name = "xmllastpar", actions = lxml.lastpar } -implement { name = "xmlloadfile", actions = lxml.load, arguments = "3 strings" } -implement { name = "xmlloadbuffer", actions = lxml.loadbuffer, arguments = "3 strings" } -implement { name = "xmlloaddata", actions = lxml.loaddata, arguments = "3 strings" } -implement { name = "xmlloaddirectives", actions = lxml.directives.load, arguments = "string" } -implement { name = "xmlmain", actions = lxml.main, arguments = "string" } -implement { name = "xmlmatch", actions = lxml.match, arguments = "string" } -implement { name = "xmlname", actions = lxml.name, arguments = "string" } -implement { name = "xmlnamespace", actions = lxml.namespace, arguments = "string" } -implement { name = "xmlnonspace", actions = lxml.nonspace, arguments = "2 strings" } -implement { name = "xmlpar", actions = lxml.par, arguments = "2 strings" } -implement { name = "xmlparam", actions = lxml.param, arguments = "3 strings" } -implement { name = "xmlpath", actions = lxml.path, arguments = { "string", "'/'" } } -implement { name = "xmlpopmatch", actions = lxml.popmatch } -implement { name = "xmlpos", actions = lxml.pos, arguments = "string" } -implement { name = "xmlpure", actions = lxml.pure, arguments = "2 strings" } -implement { name = "xmlpushmatch", actions = lxml.pushmatch } -implement { name = "xmlraw", actions = lxml.raw, arguments = "2 strings" } -implement { name = "xmlrawtex", actions = lxml.rawtex, arguments = "2 strings" } -implement { name = "xmlrefatt", actions = lxml.refatt, arguments = "2 strings" } -implement { name = "xmlregisterns", actions = xml.registerns, arguments = "2 strings" } -implement { name = "xmlremapname", actions = xml.remapname, arguments = { "lxmlid", "string","string","string" } } -implement { name = "xmlremapnamespace", actions = xml.renamespace, arguments = { "lxmlid", "string", "string" } } -implement { name = "xmlsave", actions = lxml.save, arguments = "2 strings" } -implement { name = "xmlsetatt", actions = lxml.setatt, arguments = "3 strings" } -implement { name = "xmlsetattribute", actions = lxml.setattribute, arguments = "4 strings" } -implement { name = "xmlsetpar", actions = lxml.setpar, arguments = "3 strings" } -implement { name = "xmlsetparam", actions = lxml.setparam, arguments = "4 strings" } -implement { name = "xmlsetsetup", actions = lxml.setsetup, arguments = "3 strings" } -implement { name = "xmlsnippet", actions = lxml.snippet, arguments = "2 strings" } -implement { name = "xmlstrip", actions = lxml.strip, arguments = "2 strings" } -implement { name = "xmlstripanywhere", actions = lxml.strip, arguments = { "string", "string", true, true } } -implement { name = "xmlstripnolines", actions = lxml.strip, arguments = { "string", "string", true } } -implement { name = "xmlstripped", actions = lxml.stripped, arguments = "2 strings" } -implement { name = "xmlstrippednolines", actions = lxml.stripped, arguments = { "string", "string", true } } -implement { name = "xmltag", actions = lxml.tag, arguments = "string" } -implement { name = "xmltext", actions = lxml.text, arguments = "2 strings" } -implement { name = "xmltobuffer", actions = lxml.tobuffer, arguments = "3 strings" } -implement { name = "xmltobuffertextonly", actions = lxml.tobuffer, arguments = { "string", "string", "string", false } } -implement { name = "xmltobufferverbose", actions = lxml.tobuffer, arguments = { "string", "string", "string", true, true } } -implement { name = "xmltofile", actions = lxml.tofile, arguments = "3 strings" } -implement { name = "xmltoparameters", actions = lxml.toparameters, arguments = "string" } -implement { name = "xmlverbatim", actions = lxml.verbatim, arguments = "string" } - -implement { name = "xmlstartraw", actions = lxml.startraw } -implement { name = "xmlstopraw", actions = lxml.stopraw } - -implement { name = "xmlprependsetup", actions = lxml.installsetup, arguments = { 1, "string", "string" } } -- 2:* -implement { name = "xmlappendsetup", actions = lxml.installsetup, arguments = { 2, "string", "string" } } -- 2:* -implement { name = "xmlbeforesetup", actions = lxml.installsetup, arguments = { 3, "string", "string", "string" } } -- 2:* -implement { name = "xmlaftersetup", actions = lxml.installsetup, arguments = { 4, "string", "string", "string" } } -- 2:* -implement { name = "xmlremovesetup", actions = lxml.removesetup, arguments = "2 strings" } -- 1:* -implement { name = "xmlflushsetups", actions = lxml.flushsetups, arguments = "3 strings" } -- 2:* -implement { name = "xmlresetsetups", actions = lxml.resetsetups, arguments = "string" } +implement { name = "lxmlid", public = true, actions = lxml.getid, arguments = "string" } + +implement { name = "xmldoif", public = true, actions = lxml.doif, arguments = "2 strings" } +implement { name = "xmldoifnot", public = true, actions = lxml.doifnot, arguments = "2 strings" } +implement { name = "xmldoifelse", public = true, actions = lxml.doifelse, arguments = "2 strings" } +implement { name = "xmldoiftext", public = true, actions = lxml.doiftext, arguments = "2 strings" } +implement { name = "xmldoifnottext", public = true, actions = lxml.doifnottext, arguments = "2 strings" } +implement { name = "xmldoifelsetext", public = true, actions = lxml.doifelsetext, arguments = "2 strings" } + +implement { name = "xmldoifempty", public = true, actions = lxml.doifempty, arguments = "2 strings" } +implement { name = "xmldoifnotempty", public = true, actions = lxml.doifnotempty, arguments = "2 strings" } +implement { name = "xmldoifelseempty", public = true, actions = lxml.doifelseempty, arguments = "2 strings" } +implement { name = "xmldoifselfempty", public = true, actions = lxml.doifempty, arguments = "string" } -- second arg is not passed (used) +implement { name = "xmldoifnotselfempty", public = true, actions = lxml.doifnotempty, arguments = "string" } -- second arg is not passed (used) +implement { name = "xmldoifelseselfempty", public = true, actions = lxml.doifelseempty, arguments = "string" } -- second arg is not passed (used) + +--------- { name = "xmlcontent", actions = lxml.content, arguments = "string" } +--------- { name = "xmlflushstripped", actions = lxml.strip, arguments = { "string", true } } + +implement { name = "xmlall", public = true, actions = lxml.all, arguments = "2 strings" } +implement { name = "xmlatt", public = true, actions = lxml.att, arguments = "2 strings" } +implement { name = "xmlattdef", public = true, actions = lxml.att, arguments = "3 strings" } +implement { name = "xmlattribute", public = true, actions = lxml.attribute, arguments = "3 strings" } +implement { name = "xmlattributedef", public = true, actions = lxml.attribute, arguments = "4 strings" } +implement { name = "xmlbadinclusions", public = true, actions = lxml.badinclusions, arguments = "string" } +implement { name = "xmlchainatt", public = true, actions = lxml.chainattribute, arguments = { "string", "'/'", "string" } } +implement { name = "xmlchainattdef", public = true, actions = lxml.chainattribute, arguments = { "string", "'/'", "string", "string" } } +implement { name = "xmlchecknamespace", public = true, actions = xml.checknamespace, arguments = { "lxmlid", "string", "string" } } +implement { name = "xmlcommand", public = true, actions = lxml.command, arguments = "3 strings" } +implement { name = "xmlconcat", actions = lxml.concat, arguments = "3 strings" } -- \detokenize{#3} +implement { name = "xmlconcatrange", actions = lxml.concatrange, arguments = "5 strings" } -- \detokenize{#5} +--------- { name = "xmlconcat", actions = lxml.concat, arguments = { "string", "string", "verbatim" } } +--------- { name = "xmlconcatrange", actions = lxml.concatrange, arguments = { "string", "string", "string", "string", "verbatim" } } +implement { name = "xmlcontext", public = true, actions = lxml.context, arguments = "2 strings" } +implement { name = "xmlcount", public = true, actions = lxml.count, arguments = "2 strings" } +implement { name = "xmldelete", public = true, actions = lxml.delete, arguments = "2 strings" } +implement { name = "xmldirect", public = true, actions = lxml.direct, arguments = "string" } +implement { name = "xmldirectives", public = true, actions = lxml.directives.setup, arguments = "string" } +implement { name = "xmldirectivesafter", public = true, actions = lxml.directives.after, arguments = "string" } +implement { name = "xmldirectivesbefore", public = true, actions = lxml.directives.before, arguments = "string" } +implement { name = "xmldisplayverbatim", public = true, actions = lxml.displayverbatim, arguments = "string" } +implement { name = "xmlelement", public = true, actions = lxml.element, arguments = "2 strings" } -- could be integer but now we can alias +implement { name = "xmlfilter", public = true, actions = lxml.filter, arguments = "2 strings" } +implement { name = "xmlfilterlist", public = true, actions = lxml.filterlist, arguments = "2 strings" } +implement { name = "xmlfirst", public = true, actions = lxml.first, arguments = "2 strings" } +implement { name = "xmlflush", public = true, actions = lxml.flush, arguments = "string" } +implement { name = "xmlflushcontext", public = true, actions = lxml.context, arguments = "string" } +implement { name = "xmlflushlinewise", public = true, actions = lxml.flushlinewise, arguments = "string" } +implement { name = "xmlflushpure", public = true, actions = lxml.pure, arguments = "string" } +implement { name = "xmlflushspacewise", public = true, actions = lxml.flushspacewise, arguments = "string" } +implement { name = "xmlflushtext", public = true, actions = lxml.text, arguments = "string" } +implement { name = "xmlfunction", public = true, actions = lxml.applyfunction, arguments = "2 strings" } +implement { name = "xmlinclude", public = true, actions = lxml.include, arguments = { "string", "string", "string", true } } +implement { name = "xmlincludeoptions", public = true, actions = lxml.include, arguments = "4 strings" } +implement { name = "xmlinclusion", public = true, actions = lxml.inclusion, arguments = "string" } +implement { name = "xmlinclusionbase", public = true, actions = lxml.inclusion, arguments = { "string", false, true } } +implement { name = "xmlinclusions", public = true, actions = lxml.inclusions, arguments = "string" } +implement { name = "xmlindex", public = true, actions = lxml.index, arguments = "3 strings" } -- can be integer but now we can alias +implement { name = "xmlinlineverbatim", public = true, actions = lxml.inlineverbatim, arguments = "string" } +implement { name = "xmllast", public = true, actions = lxml.last, arguments = "2 strings" } +implement { name = "xmllastatt", public = true, actions = lxml.lastatt } +implement { name = "xmllastmatch", public = true, actions = lxml.lastmatch } +implement { name = "xmllastpar", public = true, actions = lxml.lastpar } +implement { name = "xmlloadfile", actions = lxml.load, arguments = "3 strings" } +implement { name = "xmlloadbuffer", actions = lxml.loadbuffer, arguments = "3 strings" } +implement { name = "xmlloaddata", actions = lxml.loaddata, arguments = "3 strings" } +implement { name = "xmlloaddirectives", public = true, actions = lxml.directives.load, arguments = "string" } +implement { name = "xmlmain", public = true, actions = lxml.main, arguments = "string" } +implement { name = "xmlmatch", public = true, actions = lxml.match, arguments = "string" } +implement { name = "xmlname", public = true, actions = lxml.name, arguments = "string" } +implement { name = "xmlnamespace", public = true, actions = lxml.namespace, arguments = "string" } +implement { name = "xmlnonspace", public = true, actions = lxml.nonspace, arguments = "2 strings" } +implement { name = "xmlpar", public = true, actions = lxml.par, arguments = "2 strings" } +implement { name = "xmlparam", public = true, actions = lxml.param, arguments = "3 strings" } +implement { name = "xmlpath", public = true, actions = lxml.path, arguments = { "string", "'/'" } } +implement { name = "xmlpopmatch", public = true, actions = lxml.popmatch } +implement { name = "xmlpos", public = true, actions = lxml.pos, arguments = "string" } +implement { name = "xmlpure", public = true, actions = lxml.pure, arguments = "2 strings" } +implement { name = "xmlpushmatch", public = true, actions = lxml.pushmatch } +implement { name = "xmlraw", public = true, actions = lxml.raw, arguments = "2 strings" } +implement { name = "xmlrawtex", actions = lxml.rawtex, arguments = "2 strings" } +implement { name = "xmlrefatt", public = true, actions = lxml.refatt, arguments = "2 strings" } +implement { name = "xmlregisterns", public = true, actions = xml.registerns, arguments = "2 strings" } +implement { name = "xmlremapname", public = true, actions = xml.remapname, arguments = { "lxmlid", "string","string","string" } } +implement { name = "xmlremapnamespace", public = true, actions = xml.renamespace, arguments = { "lxmlid", "string", "string" } } +implement { name = "xmlsave", public = true, actions = lxml.save, arguments = "2 strings" } +implement { name = "xmlsetatt", public = true, actions = lxml.setatt, arguments = "3 strings" } +implement { name = "xmlsetattribute", public = true, actions = lxml.setattribute, arguments = "4 strings" } +implement { name = "xmlsetpar", public = true, actions = lxml.setpar, arguments = "3 strings" } +implement { name = "xmlsetparam", public = true, actions = lxml.setparam, arguments = "4 strings" } +implement { name = "xmlsetsetup", public = true, actions = lxml.setsetup, arguments = "3 strings" } +implement { name = "xmlsnippet", public = true, actions = lxml.snippet, arguments = "2 strings" } +implement { name = "xmlstrip", public = true, actions = lxml.strip, arguments = "2 strings" } +implement { name = "xmlstripanywhere", public = true, actions = lxml.strip, arguments = { "string", "string", true, true } } +implement { name = "xmlstripnolines", public = true, actions = lxml.strip, arguments = { "string", "string", true } } +implement { name = "xmlstripped", public = true, actions = lxml.stripped, arguments = "2 strings" } +implement { name = "xmlstrippednolines", public = true, actions = lxml.stripped, arguments = { "string", "string", true } } +implement { name = "xmltag", public = true, actions = lxml.tag, arguments = "string" } +implement { name = "xmltext", public = true, actions = lxml.text, arguments = "2 strings" } +implement { name = "xmltobuffer", public = true, actions = lxml.tobuffer, arguments = "3 strings" } +implement { name = "xmltobuffertextonly", public = true, actions = lxml.tobuffer, arguments = { "string", "string", "string", false } } +implement { name = "xmltobufferverbose", public = true, actions = lxml.tobuffer, arguments = { "string", "string", "string", true, true } } +implement { name = "xmltofile", public = true, actions = lxml.tofile, arguments = "3 strings" } +implement { name = "xmltoparameters", public = true, actions = lxml.toparameters, arguments = "string" } +implement { name = "xmlverbatim", public = true, actions = lxml.verbatim, arguments = "string" } + +implement { name = "xmlstartraw", actions = lxml.startraw } +implement { name = "xmlstopraw", actions = lxml.stopraw } + +implement { name = "xmlprependsetup", actions = lxml.installsetup, arguments = { 1, "string", "string" } } -- 2:* +implement { name = "xmlappendsetup", actions = lxml.installsetup, arguments = { 2, "string", "string" } } -- 2:* +implement { name = "xmlbeforesetup", actions = lxml.installsetup, arguments = { 3, "string", "string", "string" } } -- 2:* +implement { name = "xmlaftersetup", actions = lxml.installsetup, arguments = { 4, "string", "string", "string" } } -- 2:* +implement { name = "xmlremovesetup", actions = lxml.removesetup, arguments = "2 strings" } -- 1:* +implement { name = "xmlflushsetups", actions = lxml.flushsetups, arguments = "3 strings" } -- 2:* +implement { name = "xmlresetsetups", actions = lxml.resetsetups, arguments = "string" } implement { name = "xmlgetindex", actions = lxml.getindex, arguments = "2 strings" } implement { name = "xmlwithindex", actions = lxml.withindex, arguments = "3 strings" } -- cgit v1.2.3