aboutsummaryrefslogtreecommitdiff
path: root/libxml2-2.9.10/os400/libxmlrpg/xmlregexp.rpgle
diff options
context:
space:
mode:
Diffstat (limited to 'libxml2-2.9.10/os400/libxmlrpg/xmlregexp.rpgle')
-rw-r--r--libxml2-2.9.10/os400/libxmlrpg/xmlregexp.rpgle262
1 files changed, 262 insertions, 0 deletions
diff --git a/libxml2-2.9.10/os400/libxmlrpg/xmlregexp.rpgle b/libxml2-2.9.10/os400/libxmlrpg/xmlregexp.rpgle
new file mode 100644
index 0000000..01d411a
--- /dev/null
+++ b/libxml2-2.9.10/os400/libxmlrpg/xmlregexp.rpgle
@@ -0,0 +1,262 @@
+ * Summary: regular expressions handling
+ * Description: basic API for libxml regular expressions handling used
+ * for XML Schemas and validation.
+ *
+ * Copy: See Copyright for the status of this software.
+ *
+ * Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
+
+ /if not defined(XML_REGEXP_H__)
+ /define XML_REGEXP_H__
+
+ /include "libxmlrpg/xmlversion"
+
+ /if defined(LIBXML_REGEXP_ENABLED)
+
+ /include "libxmlrpg/xmlTypesC"
+
+ * xmlRegexpPtr:
+ *
+ * A libxml regular expression, they can actually be far more complex
+ * thank the POSIX regex expressions.
+
+ d xmlRegexpPtr s * based(######typedef######)
+
+ * xmlRegExecCtxtPtr:
+ *
+ * A libxml progressive regular expression evaluation context
+
+ d xmlRegExecCtxtPtr...
+ d s * based(######typedef######)
+
+ /include "libxmlrpg/tree"
+ /include "libxmlrpg/dict"
+
+ * The POSIX like API
+
+ d xmlRegexpCompile...
+ d pr extproc('xmlRegexpCompile')
+ d like(xmlRegexpPtr)
+ d regexp * value options(*string) const xmlChar *
+
+ d xmlRegFreeRegexp...
+ d pr extproc('xmlRegFreeRegexp')
+ d regexp value like(xmlRegexpPtr)
+
+ d xmlRegexpExec pr extproc('xmlRegexpExec')
+ d like(xmlCint)
+ d comp value like(xmlRegexpPtr)
+ d value * value options(*string) const xmlChar *
+
+ d xmlRegexpPrint pr extproc('xmlRegexpPrint')
+ d output * value FILE *
+ d regexp value like(xmlRegexpPtr)
+
+ d xmlRegexpIsDeterminist...
+ d pr extproc('xmlRegexpIsDeterminist')
+ d like(xmlCint)
+ d comp value like(xmlRegexpPtr)
+
+ * xmlRegExecCallbacks:
+ * @exec: the regular expression context
+ * @token: the current token string
+ * @transdata: transition data
+ * @inputdata: input data
+ *
+ * Callback function when doing a transition in the automata
+
+ d xmlRegExecCallbacks...
+ d s * based(######typedef######)
+ d procptr
+
+ * The progressive API
+
+ d xmlRegNewExecCtxt...
+ d pr extproc('xmlRegNewExecCtxt')
+ d like(xmlRegExecCtxtPtr)
+ d comp value like(xmlRegexpPtr)
+ d callback value like(xmlRegExecCallbacks)
+ d data * value void *
+
+ d xmlRegFreeExecCtxt...
+ d pr extproc('xmlRegFreeExecCtxt')
+ d exec value like(xmlRegExecCtxtPtr)
+
+ d xmlRegExecPushString...
+ d pr extproc('xmlRegExecPushString')
+ d like(xmlCint)
+ d exec value like(xmlRegExecCtxtPtr)
+ d value * value options(*string) const xmlChar *
+ d data * value void *
+
+ d xmlRegExecPushString2...
+ d pr extproc('xmlRegExecPushString2')
+ d like(xmlCint)
+ d exec value like(xmlRegExecCtxtPtr)
+ d value * value options(*string) const xmlChar *
+ d value2 * value options(*string) const xmlChar *
+ d data * value void *
+
+ d xmlRegExecNextValues...
+ d pr extproc('xmlRegExecNextValues')
+ d like(xmlCint)
+ d exec value like(xmlRegExecCtxtPtr)
+ d nbval like(xmlCint)
+ d nbneg like(xmlCint)
+ d values * xmlChar * (*)
+ d terminal like(xmlCint)
+
+ d xmlRegExecErrInfo...
+ d pr extproc('xmlRegExecErrInfo')
+ d like(xmlCint)
+ d exec value like(xmlRegExecCtxtPtr)
+ d string * const xmlChar * (*)
+ d nbval like(xmlCint)
+ d nbneg like(xmlCint)
+ d values * xmlChar * (*)
+ d terminal like(xmlCint)
+
+ /if defined(LIBXML_EXPR_ENABLED)
+
+ * Formal regular expression handling
+ * Its goal is to do some formal work on content models
+
+ * expressions are used within a context
+
+ d xmlExpCtxtPtr s * based(######typedef######)
+
+ d xmlExpFreeCtxt pr extproc('xmlExpFreeCtxt')
+ d ctxt value like(xmlExpCtxtPtr)
+
+ d xmlExpNewCtxt pr extproc('xmlExpNewCtxt')
+ d like(xmlExpCtxtPtr)
+ d maxNodes value like(xmlCint)
+ d dict value like(xmlDictPtr)
+
+ d xmlExpCtxtNbNodes...
+ d pr extproc('xmlExpCtxtNbNodes')
+ d like(xmlCint)
+ d ctxt value like(xmlExpCtxtPtr)
+
+ d xmlExpCtxtNbCons...
+ d pr extproc('xmlExpCtxtNbCons')
+ d like(xmlCint)
+ d ctxt value like(xmlExpCtxtPtr)
+
+ * Expressions are trees but the tree is opaque
+
+ d xmlExpNodePtr s * based(######typedef######)
+
+ d xmlExpNodeType s based(######typedef######)
+ d like(xmlCenum)
+ d XML_EXP_EMPTY c 0
+ d XML_EXP_FORBID...
+ d c 1
+ d XML_EXP_ATOM c 2
+ d XML_EXP_SEQ c 3
+ d XML_EXP_OR c 4
+ d XML_EXP_COUNT c 5
+
+ * 2 core expressions shared by all for the empty language set
+ * and for the set with just the empty token
+
+ d forbiddenExp s import('forbiddenExp')
+ d like(xmlExpNodePtr)
+
+ d emptyExp s import('emptyExp')
+ d like(xmlExpNodePtr)
+
+
+ * Expressions are reference counted internally
+
+ d xmlExpFree pr extproc('xmlExpFree')
+ d expr value like(xmlExpNodePtr)
+
+ d xmlExpRef pr extproc('xmlExpRef')
+ d expr value like(xmlExpNodePtr)
+
+ * constructors can be either manual or from a string
+
+ d xmlExpParse pr extproc('xmlExpParse')
+ d like(xmlExpNodePtr)
+ d ctxt value like(xmlExpCtxtPtr)
+ d expr * value options(*string) const char *
+
+ d xmlExpNewAtom pr extproc('xmlExpNewAtom')
+ d like(xmlExpNodePtr)
+ d ctxt value like(xmlExpCtxtPtr)
+ d name * value options(*string) const xmlChar *
+ d len value like(xmlCint)
+
+ d xmlExpNewOr pr extproc('xmlExpNewOr')
+ d like(xmlExpNodePtr)
+ d ctxt value like(xmlExpCtxtPtr)
+ d left value like(xmlExpNodePtr)
+ d right value like(xmlExpNodePtr)
+
+ d xmlExpNewSeq pr extproc('xmlExpNewSeq')
+ d like(xmlExpNodePtr)
+ d ctxt value like(xmlExpCtxtPtr)
+ d left value like(xmlExpNodePtr)
+ d right value like(xmlExpNodePtr)
+
+ d xmlExpNewRange pr extproc('xmlExpNewRange')
+ d like(xmlExpNodePtr)
+ d ctxt value like(xmlExpCtxtPtr)
+ d subset value like(xmlExpNodePtr)
+ d min value like(xmlCint)
+ d max value like(xmlCint)
+
+ * The really interesting APIs
+
+ d xmlExpIsNillable...
+ d pr extproc('xmlExpIsNillable')
+ d like(xmlCint)
+ d expr value like(xmlExpNodePtr)
+
+ d xmlExpMaxToken pr extproc('xmlExpMaxToken')
+ d like(xmlCint)
+ d expr value like(xmlExpNodePtr)
+
+ d xmlExpGetLanguage...
+ d pr extproc('xmlExpGetLanguage')
+ d like(xmlCint)
+ d ctxt value like(xmlExpCtxtPtr)
+ d expr value like(xmlExpNodePtr)
+ d langList * const xmlChar *(*)
+ d len value like(xmlCint)
+
+ d xmlExpGetStart pr extproc('xmlExpGetStart')
+ d like(xmlCint)
+ d ctxt value like(xmlExpCtxtPtr)
+ d expr value like(xmlExpNodePtr)
+ d tokList * const xmlChar *(*)
+ d len value like(xmlCint)
+
+ d xmlExpStringDerive...
+ d pr extproc('xmlExpStringDerive')
+ d like(xmlExpNodePtr)
+ d ctxt value like(xmlExpCtxtPtr)
+ d expr value like(xmlExpNodePtr)
+ d str * value options(*string) const xmlChar *
+ d len value like(xmlCint)
+
+ d xmlExpExpDerive...
+ d pr extproc('xmlExpExpDerive')
+ d like(xmlExpNodePtr)
+ d ctxt value like(xmlExpCtxtPtr)
+ d expr value like(xmlExpNodePtr)
+ d sub value like(xmlExpNodePtr)
+
+ d xmlExpSubsume pr extproc('xmlExpSubsume')
+ d like(xmlCint)
+ d ctxt value like(xmlExpCtxtPtr)
+ d expr value like(xmlExpNodePtr)
+ d sub value like(xmlExpNodePtr)
+
+ d xmlExpDump pr extproc('xmlExpDump')
+ d buf value like(xmlBufferPtr)
+ d expr value like(xmlExpNodePtr)
+ /endif LIBXML_EXPR_ENABLED
+ /endif LIBXML_REGEXP_ENABLD
+ /endif XML_REGEXP_H__