• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1      * Summary: API to build regexp automata
2      * Description: the API to build regexp automata
3      *
4      * Copy: See Copyright for the status of this software.
5      *
6      * Author: Patrick Monnerat <pm@datasphere.ch>, DATASPHERE S.A.
7
8      /if not defined(XML_AUTOMATA_H__)
9      /define XML_AUTOMATA_H__
10
11      /include "libxmlrpg/xmlversion"
12
13      /if defined(LIBXML_REGEXP_ENABLED)
14      /if defined(LIBXML_AUTOMATA_ENABLED)
15
16      /include "libxmlrpg/xmlTypesC"
17      /include "libxmlrpg/tree"
18      /include "libxmlrpg/xmlregexp"
19
20      * xmlAutomataPtr:
21      *
22      * A libxml automata description, It can be compiled into a regexp
23
24     d xmlAutomataPtr  s               *   based(######typedef######)
25
26      * xmlAutomataStatePtr:
27      *
28      * A state int the automata description,
29
30     d xmlAutomataStatePtr...
31     d                 s               *   based(######typedef######)
32
33      * Building API
34
35     d xmlNewAutomata  pr                  extproc('xmlNewAutomata')
36     d                                     like(xmlAutomataPtr)
37
38     d xmlFreeAutomata...
39     d                 pr                  extproc('xmlFreeAutomata')
40     d  am                                 value like(xmlAutomataPtr)
41
42     d xmlAutomataGetInitState...
43     d                 pr                  extproc('xmlAutomataGetInitState')
44     d                                     like(xmlAutomataStatePtr)
45     d  am                                 value like(xmlAutomataPtr)
46
47     d xmlAutomataSetFinalState...
48     d                 pr                  extproc('xmlAutomataSetFinalState')
49     d                                     like(xmlCint)
50     d  am                                 value like(xmlAutomataPtr)
51     d  state                              value like(xmlAutomataStatePtr)
52
53     d xmlAutomataNewState...
54     d                 pr                  extproc('xmlAutomataNewState')
55     d                                     like(xmlAutomataStatePtr)
56     d  am                                 value like(xmlAutomataPtr)
57
58     d xmlAutomataNewTransition...
59     d                 pr                  extproc('xmlAutomataNewTransition')
60     d                                     like(xmlAutomataStatePtr)
61     d  am                                 value like(xmlAutomataPtr)
62     d  from                               value like(xmlAutomataStatePtr)
63     d  to                                 value like(xmlAutomataStatePtr)
64     d  token                          *   value options(*string)               const xmlChar *
65     d  data                           *   value options(*string)               void *
66
67     d xmlAutomataNewTransition2...
68     d                 pr                  extproc('xmlAutomataNewTransition2')
69     d                                     like(xmlAutomataStatePtr)
70     d  am                                 value like(xmlAutomataPtr)
71     d  from                               value like(xmlAutomataStatePtr)
72     d  to                                 value like(xmlAutomataStatePtr)
73     d  token                          *   value options(*string)               const xmlChar *
74     d  token2                         *   value options(*string)               const xmlChar *
75     d  data                           *   value options(*string)               void *
76
77     d xmlAutomataNewNegTrans...
78     d                 pr                  extproc('xmlAutomataNewNegTrans')
79     d                                     like(xmlAutomataStatePtr)
80     d  am                                 value like(xmlAutomataPtr)
81     d  from                               value like(xmlAutomataStatePtr)
82     d  to                                 value like(xmlAutomataStatePtr)
83     d  token                          *   value options(*string)               const xmlChar *
84     d  token2                         *   value options(*string)               const xmlChar *
85     d  data                           *   value options(*string)               void *
86
87     d xmlAutomataNewCountTrans...
88     d                 pr                  extproc('xmlAutomataNewCountTrans')
89     d                                     like(xmlAutomataStatePtr)
90     d  am                                 value like(xmlAutomataPtr)
91     d  from                               value like(xmlAutomataStatePtr)
92     d  to                                 value like(xmlAutomataStatePtr)
93     d  token                          *   value options(*string)               const xmlChar *
94     d  min                                value like(xmlCint)
95     d  max                                value like(xmlCint)
96     d  data                           *   value options(*string)               void *
97
98     d xmlAutomataNewCountTrans2...
99     d                 pr                  extproc('xmlAutomataNewCountTrans2')
100     d                                     like(xmlAutomataStatePtr)
101     d  am                                 value like(xmlAutomataPtr)
102     d  from                               value like(xmlAutomataStatePtr)
103     d  to                                 value like(xmlAutomataStatePtr)
104     d  token                          *   value options(*string)               const xmlChar *
105     d  token2                         *   value options(*string)               const xmlChar *
106     d  min                                value like(xmlCint)
107     d  max                                value like(xmlCint)
108     d  data                           *   value options(*string)               void *
109
110     d xmlAutomataNewOnceTrans...
111     d                 pr                  extproc('xmlAutomataNewOnceTrans')
112     d                                     like(xmlAutomataStatePtr)
113     d  am                                 value like(xmlAutomataPtr)
114     d  from                               value like(xmlAutomataStatePtr)
115     d  to                                 value like(xmlAutomataStatePtr)
116     d  token                          *   value options(*string)               const xmlChar *
117     d  min                                value like(xmlCint)
118     d  max                                value like(xmlCint)
119     d  data                           *   value options(*string)               void *
120
121     d xmlAutomataNewOnceTrans2...
122     d                 pr                  extproc('xmlAutomataNewOnceTrans2')
123     d                                     like(xmlAutomataStatePtr)
124     d  am                                 value like(xmlAutomataPtr)
125     d  from                               value like(xmlAutomataStatePtr)
126     d  to                                 value like(xmlAutomataStatePtr)
127     d  token                          *   value options(*string)               const xmlChar *
128     d  token2                         *   value options(*string)               const xmlChar *
129     d  min                                value like(xmlCint)
130     d  max                                value like(xmlCint)
131     d  data                           *   value options(*string)               void *
132
133     d xmlAutomataNewAllTrans...
134     d                 pr                  extproc('xmlAutomataNewAllTrans')
135     d                                     like(xmlAutomataStatePtr)
136     d  am                                 value like(xmlAutomataPtr)
137     d  from                               value like(xmlAutomataStatePtr)
138     d  to                                 value like(xmlAutomataStatePtr)
139     d  lax                                value like(xmlCint)
140
141     d xmlAutomataNewEpsilon...
142     d                 pr                  extproc('xmlAutomataNewEpsilon')
143     d                                     like(xmlAutomataStatePtr)
144     d  am                                 value like(xmlAutomataPtr)
145     d  from                               value like(xmlAutomataStatePtr)
146     d  to                                 value like(xmlAutomataStatePtr)
147
148     d xmlAutomataNewCountedTrans...
149     d                 pr                  extproc('xmlAutomataNewCountedTrans')
150     d                                     like(xmlAutomataStatePtr)
151     d  am                                 value like(xmlAutomataPtr)
152     d  from                               value like(xmlAutomataStatePtr)
153     d  to                                 value like(xmlAutomataStatePtr)
154     d  counter                            value like(xmlCint)
155
156     d xmlAutomataNewCounterTrans...
157     d                 pr                  extproc('xmlAutomataNewCounterTrans')
158     d                                     like(xmlAutomataStatePtr)
159     d  am                                 value like(xmlAutomataPtr)
160     d  from                               value like(xmlAutomataStatePtr)
161     d  to                                 value like(xmlAutomataStatePtr)
162     d  counter                            value like(xmlCint)
163
164     d xmlAutomataNewCounter...
165     d                 pr                  extproc('xmlAutomataNewCounter')
166     d                                     like(xmlCint)
167     d  am                                 value like(xmlAutomataPtr)
168     d  min                                value like(xmlCint)
169     d  max                                value like(xmlCint)
170
171     d xmlAutomataCompile...
172     d                 pr                  extproc('xmlAutomataCompile')
173     d                                     like(xmlRegexpPtr)
174     d  am                                 value like(xmlAutomataPtr)
175
176     d xmlAutomataIsDeterminist...
177     d                 pr                  extproc('xmlAutomataIsDeterminist')
178     d                                     like(xmlCint)
179     d  am                                 value like(xmlAutomataPtr)
180
181      /endif                                                                    AUTOMATA_ENABLED
182      /endif                                                                    LIBXML_REGEXP_ENABLD
183      /endif                                                                    XML_AUTOMATA_H__
184