1 * Summary: pattern expression handling
2 * Description: allows to compile and test pattern expressions for nodes
3 * either in a tree or based on a parser state.
5 * Copy: See Copyright for the status of this software.
7 * Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
9 /if not defined(XML_PATTERN_H__)
10 /define XML_PATTERN_H__
12 /include "libxmlrpg/xmlversion"
14 /if defined(LIBXML_PATTERN_ENABLED)
16 /include "libxmlrpg/xmlTypesC"
17 /include "libxmlrpg/tree"
18 /include "libxmlrpg/dict"
22 * A compiled (XPath based) pattern to select nodes
25 d s * based(######typedef######)
29 * This is the set of options affecting the behaviour of pattern
30 * matching with this module
33 d s based(######typedef######)
35 d XML_PATTERN_DEFAULT... Simple pattern match
37 d XML_PATTERN_XPATH... Std XPath pattern
39 d XML_PATTERN_XSSEL... Schm sel XPth subset
41 d XML_PATTERN_XSFIELD... Schm fld XPth subset
44 d xmlFreePattern pr extproc('xmlFreePattern')
45 d comp value like(xmlPatternPtr)
47 d xmlFreePatternList...
48 d pr extproc('xmlFreePatternList')
49 d comp value like(xmlPatternPtr)
51 d xmlPatterncompile...
52 d pr extproc('xmlPatterncompile')
54 d pattern * value options(*string) const xmlChar *
55 d dict * value xmlDict *
56 d flags value like(xmlCint)
57 d namespaces * const xmlChar *(*)
60 d pr extproc('xmlPatternMatch')
62 d comp value like(xmlPatternPtr)
63 d node value like(xmlNodePtr)
65 * streaming interfaces
68 d s * based(######typedef######)
70 d xmlPatternStreamable...
71 d pr extproc('xmlPatternStreamable')
73 d comp value like(xmlPatternPtr)
75 d xmlPatternMaxDepth...
76 d pr extproc('xmlPatternMaxDepth')
78 d comp value like(xmlPatternPtr)
80 d xmlPatternMinDepth...
81 d pr extproc('xmlPatternMinDepth')
83 d comp value like(xmlPatternPtr)
85 d xmlPatternFromRoot...
86 d pr extproc('xmlPatternFromRoot')
88 d comp value like(xmlPatternPtr)
90 d xmlPatternGetStreamCtxt...
91 d pr extproc('xmlPatternGetStreamCtxt')
92 d like(xmlStreamCtxtPtr)
93 d comp value like(xmlPatternPtr)
95 d xmlFreeStreamCtxt...
96 d pr extproc('xmlFreeStreamCtxt')
97 d stream value like(xmlStreamCtxtPtr)
99 d xmlStreamPushNode...
100 d pr extproc('xmlStreamPushNode')
102 d stream value like(xmlStreamCtxtPtr)
103 d name * value options(*string) const xmlChar *
104 d ns * value options(*string) const xmlChar *
105 d nodeType value like(xmlCint)
107 d xmlStreamPush pr extproc('xmlStreamPush')
109 d stream value like(xmlStreamCtxtPtr)
110 d name * value options(*string) const xmlChar *
111 d ns * value options(*string) const xmlChar *
113 d xmlStreamPushAttr...
114 d pr extproc('xmlStreamPushAttr')
116 d stream value like(xmlStreamCtxtPtr)
117 d name * value options(*string) const xmlChar *
118 d ns * value options(*string) const xmlChar *
120 d xmlStreamPop pr extproc('xmlStreamPop')
122 d stream value like(xmlStreamCtxtPtr)
124 d xmlStreamWantsAnyNode...
125 d pr extproc('xmlStreamWantsAnyNode')
127 d stream value like(xmlStreamCtxtPtr)
129 /endif LIBXML_PATTERN_ENBLD
130 /endif XML_PATTERN_H__