1 | <?xml version="1.0" encoding="UTF-8"?>
|
---|
2 | <html>
|
---|
3 | <head>
|
---|
4 | <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
|
---|
5 | <title>xmlautomata: API to build regexp automata</title>
|
---|
6 | <meta name="generator" content="Libxml2 devhelp stylesheet"/>
|
---|
7 | <link rel="start" href="index.html" title="libxml2 Reference Manual"/>
|
---|
8 | <link rel="up" href="general.html" title="API"/>
|
---|
9 | <link rel="stylesheet" href="style.css" type="text/css"/>
|
---|
10 | <link rel="chapter" href="general.html" title="API"/>
|
---|
11 | </head>
|
---|
12 | <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
---|
13 | <table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
|
---|
14 | <tr valign="middle">
|
---|
15 | <td>
|
---|
16 | <a accesskey="p" href="libxml2-xmlIO.html">
|
---|
17 | <img src="left.png" width="24" height="24" border="0" alt="Prev"/>
|
---|
18 | </a>
|
---|
19 | </td>
|
---|
20 | <td>
|
---|
21 | <a accesskey="u" href="general.html">
|
---|
22 | <img src="up.png" width="24" height="24" border="0" alt="Up"/>
|
---|
23 | </a>
|
---|
24 | </td>
|
---|
25 | <td>
|
---|
26 | <a accesskey="h" href="index.html">
|
---|
27 | <img src="home.png" width="24" height="24" border="0" alt="Home"/>
|
---|
28 | </a>
|
---|
29 | </td>
|
---|
30 | <td>
|
---|
31 | <a accesskey="n" href="libxml2-xmlerror.html">
|
---|
32 | <img src="right.png" width="24" height="24" border="0" alt="Next"/>
|
---|
33 | </a>
|
---|
34 | </td>
|
---|
35 | <th width="100%" align="center">libxml2 Reference Manual</th>
|
---|
36 | </tr>
|
---|
37 | </table>
|
---|
38 | <h2>
|
---|
39 | <span class="refentrytitle">xmlautomata</span>
|
---|
40 | </h2>
|
---|
41 | <p>xmlautomata - API to build regexp automata</p>
|
---|
42 | <p>the API to build regexp automata </p>
|
---|
43 | <p>Author(s): Daniel Veillard </p>
|
---|
44 | <div class="refsynopsisdiv">
|
---|
45 | <h2>Synopsis</h2>
|
---|
46 | <pre class="synopsis">typedef <a href="libxml2-xmlautomata.html#xmlAutomataState">xmlAutomataState</a> * <a href="#xmlAutomataStatePtr">xmlAutomataStatePtr</a>;
|
---|
47 | typedef struct _xmlAutomata <a href="#xmlAutomata">xmlAutomata</a>;
|
---|
48 | typedef <a href="libxml2-xmlautomata.html#xmlAutomata">xmlAutomata</a> * <a href="#xmlAutomataPtr">xmlAutomataPtr</a>;
|
---|
49 | typedef struct _xmlAutomataState <a href="#xmlAutomataState">xmlAutomataState</a>;
|
---|
50 | void <a href="#xmlFreeAutomata">xmlFreeAutomata</a> (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am);
|
---|
51 | int <a href="#xmlAutomataNewCounter">xmlAutomataNewCounter</a> (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br/> int min, <br/> int max);
|
---|
52 | <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> <a href="#xmlAutomataGetInitState">xmlAutomataGetInitState</a> (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am);
|
---|
53 | <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> <a href="#xmlAutomataNewTransition2">xmlAutomataNewTransition2</a> (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * token, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * token2, <br/> void * data);
|
---|
54 | <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> <a href="#xmlAutomataNewState">xmlAutomataNewState</a> (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am);
|
---|
55 | <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> <a href="#xmlAutomataNewCountTrans">xmlAutomataNewCountTrans</a> (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * token, <br/> int min, <br/> int max, <br/> void * data);
|
---|
56 | <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> <a href="#xmlAutomataNewOnceTrans2">xmlAutomataNewOnceTrans2</a> (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * token, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * token2, <br/> int min, <br/> int max, <br/> void * data);
|
---|
57 | <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> <a href="#xmlAutomataNewAllTrans">xmlAutomataNewAllTrans</a> (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br/> int lax);
|
---|
58 | <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> <a href="#xmlAutomataNewCountedTrans">xmlAutomataNewCountedTrans</a> (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br/> int counter);
|
---|
59 | <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> <a href="#xmlAutomataNewCounterTrans">xmlAutomataNewCounterTrans</a> (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br/> int counter);
|
---|
60 | <a href="libxml2-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a> <a href="#xmlAutomataCompile">xmlAutomataCompile</a> (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am);
|
---|
61 | <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> <a href="#xmlAutomataNewNegTrans">xmlAutomataNewNegTrans</a> (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * token, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * token2, <br/> void * data);
|
---|
62 | <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> <a href="#xmlAutomataNewEpsilon">xmlAutomataNewEpsilon</a> (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to);
|
---|
63 | <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> <a href="#xmlAutomataNewCountTrans2">xmlAutomataNewCountTrans2</a> (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * token, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * token2, <br/> int min, <br/> int max, <br/> void * data);
|
---|
64 | <a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> <a href="#xmlNewAutomata">xmlNewAutomata</a> (void);
|
---|
65 | int <a href="#xmlAutomataSetFinalState">xmlAutomataSetFinalState</a> (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> state);
|
---|
66 | <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> <a href="#xmlAutomataNewOnceTrans">xmlAutomataNewOnceTrans</a> (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * token, <br/> int min, <br/> int max, <br/> void * data);
|
---|
67 | <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> <a href="#xmlAutomataNewTransition">xmlAutomataNewTransition</a> (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * token, <br/> void * data);
|
---|
68 | int <a href="#xmlAutomataIsDeterminist">xmlAutomataIsDeterminist</a> (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am);
|
---|
69 | </pre>
|
---|
70 | </div>
|
---|
71 | <div class="refsect1" lang="en">
|
---|
72 | <h2>Description</h2>
|
---|
73 | </div>
|
---|
74 | <div class="refsect1" lang="en">
|
---|
75 | <h2>Details</h2>
|
---|
76 | <div class="refsect2" lang="en">
|
---|
77 | <div class="refsect2" lang="en"><h3><a name="xmlAutomata">Structure </a>xmlAutomata</h3><pre class="programlisting">struct _xmlAutomata {
|
---|
78 | The content of this structure is not made public by the API.
|
---|
79 | } xmlAutomata;
|
---|
80 | </pre><p/>
|
---|
81 | </div>
|
---|
82 | <hr/>
|
---|
83 | <div class="refsect2" lang="en"><h3><a name="xmlAutomataPtr">Typedef </a>xmlAutomataPtr</h3><pre class="programlisting"><a href="libxml2-xmlautomata.html#xmlAutomata">xmlAutomata</a> * xmlAutomataPtr;
|
---|
84 | </pre><p>A libxml automata description, It can be compiled into a regexp</p>
|
---|
85 | </div>
|
---|
86 | <hr/>
|
---|
87 | <div class="refsect2" lang="en"><h3><a name="xmlAutomataState">Structure </a>xmlAutomataState</h3><pre class="programlisting">struct _xmlAutomataState {
|
---|
88 | The content of this structure is not made public by the API.
|
---|
89 | } xmlAutomataState;
|
---|
90 | </pre><p/>
|
---|
91 | </div>
|
---|
92 | <hr/>
|
---|
93 | <div class="refsect2" lang="en"><h3><a name="xmlAutomataStatePtr">Typedef </a>xmlAutomataStatePtr</h3><pre class="programlisting"><a href="libxml2-xmlautomata.html#xmlAutomataState">xmlAutomataState</a> * xmlAutomataStatePtr;
|
---|
94 | </pre><p>A state int the automata description,</p>
|
---|
95 | </div>
|
---|
96 | <hr/>
|
---|
97 | <div class="refsect2" lang="en"><h3><a name="xmlAutomataCompile"/>xmlAutomataCompile ()</h3><pre class="programlisting"><a href="libxml2-xmlregexp.html#xmlRegexpPtr">xmlRegexpPtr</a> xmlAutomataCompile (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am)<br/>
|
---|
98 | </pre><p>Compile the automata into a Reg Exp ready for being executed. The automata should be free after this point.</p>
|
---|
99 | <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the compiled regexp or NULL in case of error</td></tr></tbody></table></div></div>
|
---|
100 | <hr/>
|
---|
101 | <div class="refsect2" lang="en"><h3><a name="xmlAutomataGetInitState"/>xmlAutomataGetInitState ()</h3><pre class="programlisting"><a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> xmlAutomataGetInitState (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am)<br/>
|
---|
102 | </pre><p>Initial state lookup</p>
|
---|
103 | <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the initial state of the automata</td></tr></tbody></table></div></div>
|
---|
104 | <hr/>
|
---|
105 | <div class="refsect2" lang="en"><h3><a name="xmlAutomataIsDeterminist"/>xmlAutomataIsDeterminist ()</h3><pre class="programlisting">int xmlAutomataIsDeterminist (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am)<br/>
|
---|
106 | </pre><p>Checks if an automata is determinist.</p>
|
---|
107 | <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>1 if true, 0 if not, and -1 in case of error</td></tr></tbody></table></div></div>
|
---|
108 | <hr/>
|
---|
109 | <div class="refsect2" lang="en"><h3><a name="xmlAutomataNewAllTrans"/>xmlAutomataNewAllTrans ()</h3><pre class="programlisting"><a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> xmlAutomataNewAllTrans (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br/> int lax)<br/>
|
---|
110 | </pre><p>If @to is NULL, this creates first a new target state in the automata and then adds a an ALL transition from the @from state to the target state. That transition is an epsilon transition allowed only when all transitions from the @from node have been activated.</p>
|
---|
111 | <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>the starting point of the transition</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>the target point of the transition or NULL</td></tr><tr><td><span class="term"><i><tt>lax</tt></i>:</span></td><td>allow to transition if not all all transitions have been activated</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the target state or NULL in case of error</td></tr></tbody></table></div></div>
|
---|
112 | <hr/>
|
---|
113 | <div class="refsect2" lang="en"><h3><a name="xmlAutomataNewCountTrans"/>xmlAutomataNewCountTrans ()</h3><pre class="programlisting"><a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> xmlAutomataNewCountTrans (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * token, <br/> int min, <br/> int max, <br/> void * data)<br/>
|
---|
114 | </pre><p>If @to is NULL, this creates first a new target state in the automata and then adds a transition from the @from state to the target state activated by a succession of input of value @token and whose number is between @min and @max</p>
|
---|
115 | <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>the starting point of the transition</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>the target point of the transition or NULL</td></tr><tr><td><span class="term"><i><tt>token</tt></i>:</span></td><td>the input string associated to that transition</td></tr><tr><td><span class="term"><i><tt>min</tt></i>:</span></td><td>the minimum successive occurences of token</td></tr><tr><td><span class="term"><i><tt>max</tt></i>:</span></td><td>the maximum successive occurences of token</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>data associated to the transition</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the target state or NULL in case of error</td></tr></tbody></table></div></div>
|
---|
116 | <hr/>
|
---|
117 | <div class="refsect2" lang="en"><h3><a name="xmlAutomataNewCountTrans2"/>xmlAutomataNewCountTrans2 ()</h3><pre class="programlisting"><a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> xmlAutomataNewCountTrans2 (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * token, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * token2, <br/> int min, <br/> int max, <br/> void * data)<br/>
|
---|
118 | </pre><p>If @to is NULL, this creates first a new target state in the automata and then adds a transition from the @from state to the target state activated by a succession of input of value @token and @token2 and whose number is between @min and @max</p>
|
---|
119 | <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>the starting point of the transition</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>the target point of the transition or NULL</td></tr><tr><td><span class="term"><i><tt>token</tt></i>:</span></td><td>the input string associated to that transition</td></tr><tr><td><span class="term"><i><tt>token2</tt></i>:</span></td><td>the second input string associated to that transition</td></tr><tr><td><span class="term"><i><tt>min</tt></i>:</span></td><td>the minimum successive occurences of token</td></tr><tr><td><span class="term"><i><tt>max</tt></i>:</span></td><td>the maximum successive occurences of token</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>data associated to the transition</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the target state or NULL in case of error</td></tr></tbody></table></div></div>
|
---|
120 | <hr/>
|
---|
121 | <div class="refsect2" lang="en"><h3><a name="xmlAutomataNewCountedTrans"/>xmlAutomataNewCountedTrans ()</h3><pre class="programlisting"><a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> xmlAutomataNewCountedTrans (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br/> int counter)<br/>
|
---|
122 | </pre><p>If @to is NULL, this creates first a new target state in the automata and then adds an epsilon transition from the @from state to the target state which will increment the counter provided</p>
|
---|
123 | <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>the starting point of the transition</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>the target point of the transition or NULL</td></tr><tr><td><span class="term"><i><tt>counter</tt></i>:</span></td><td>the counter associated to that transition</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the target state or NULL in case of error</td></tr></tbody></table></div></div>
|
---|
124 | <hr/>
|
---|
125 | <div class="refsect2" lang="en"><h3><a name="xmlAutomataNewCounter"/>xmlAutomataNewCounter ()</h3><pre class="programlisting">int xmlAutomataNewCounter (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br/> int min, <br/> int max)<br/>
|
---|
126 | </pre><p>Create a new counter</p>
|
---|
127 | <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>min</tt></i>:</span></td><td>the minimal value on the counter</td></tr><tr><td><span class="term"><i><tt>max</tt></i>:</span></td><td>the maximal value on the counter</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the counter number or -1 in case of error</td></tr></tbody></table></div></div>
|
---|
128 | <hr/>
|
---|
129 | <div class="refsect2" lang="en"><h3><a name="xmlAutomataNewCounterTrans"/>xmlAutomataNewCounterTrans ()</h3><pre class="programlisting"><a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> xmlAutomataNewCounterTrans (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br/> int counter)<br/>
|
---|
130 | </pre><p>If @to is NULL, this creates first a new target state in the automata and then adds an epsilon transition from the @from state to the target state which will be allowed only if the counter is within the right range.</p>
|
---|
131 | <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>the starting point of the transition</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>the target point of the transition or NULL</td></tr><tr><td><span class="term"><i><tt>counter</tt></i>:</span></td><td>the counter associated to that transition</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the target state or NULL in case of error</td></tr></tbody></table></div></div>
|
---|
132 | <hr/>
|
---|
133 | <div class="refsect2" lang="en"><h3><a name="xmlAutomataNewEpsilon"/>xmlAutomataNewEpsilon ()</h3><pre class="programlisting"><a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> xmlAutomataNewEpsilon (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to)<br/>
|
---|
134 | </pre><p>If @to is NULL, this creates first a new target state in the automata and then adds an epsilon transition from the @from state to the target state</p>
|
---|
135 | <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>the starting point of the transition</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>the target point of the transition or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the target state or NULL in case of error</td></tr></tbody></table></div></div>
|
---|
136 | <hr/>
|
---|
137 | <div class="refsect2" lang="en"><h3><a name="xmlAutomataNewNegTrans"/>xmlAutomataNewNegTrans ()</h3><pre class="programlisting"><a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> xmlAutomataNewNegTrans (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * token, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * token2, <br/> void * data)<br/>
|
---|
138 | </pre><p>If @to is NULL, this creates first a new target state in the automata and then adds a transition from the @from state to the target state activated by any value except (@token,@token2) Note that if @token2 is not NULL, then (X, NULL) won't match to follow # the semantic of XSD ##other</p>
|
---|
139 | <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>the starting point of the transition</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>the target point of the transition or NULL</td></tr><tr><td><span class="term"><i><tt>token</tt></i>:</span></td><td>the first input string associated to that transition</td></tr><tr><td><span class="term"><i><tt>token2</tt></i>:</span></td><td>the second input string associated to that transition</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>data passed to the callback function if the transition is activated</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the target state or NULL in case of error</td></tr></tbody></table></div></div>
|
---|
140 | <hr/>
|
---|
141 | <div class="refsect2" lang="en"><h3><a name="xmlAutomataNewOnceTrans"/>xmlAutomataNewOnceTrans ()</h3><pre class="programlisting"><a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> xmlAutomataNewOnceTrans (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * token, <br/> int min, <br/> int max, <br/> void * data)<br/>
|
---|
142 | </pre><p>If @to is NULL, this creates first a new target state in the automata and then adds a transition from the @from state to the target state activated by a succession of input of value @token and whose number is between @min and @max, moreover that transition can only be crossed once.</p>
|
---|
143 | <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>the starting point of the transition</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>the target point of the transition or NULL</td></tr><tr><td><span class="term"><i><tt>token</tt></i>:</span></td><td>the input string associated to that transition</td></tr><tr><td><span class="term"><i><tt>min</tt></i>:</span></td><td>the minimum successive occurences of token</td></tr><tr><td><span class="term"><i><tt>max</tt></i>:</span></td><td>the maximum successive occurences of token</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>data associated to the transition</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the target state or NULL in case of error</td></tr></tbody></table></div></div>
|
---|
144 | <hr/>
|
---|
145 | <div class="refsect2" lang="en"><h3><a name="xmlAutomataNewOnceTrans2"/>xmlAutomataNewOnceTrans2 ()</h3><pre class="programlisting"><a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> xmlAutomataNewOnceTrans2 (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * token, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * token2, <br/> int min, <br/> int max, <br/> void * data)<br/>
|
---|
146 | </pre><p>If @to is NULL, this creates first a new target state in the automata and then adds a transition from the @from state to the target state activated by a succession of input of value @token and @token2 and whose number is between @min and @max, moreover that transition can only be crossed once.</p>
|
---|
147 | <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>the starting point of the transition</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>the target point of the transition or NULL</td></tr><tr><td><span class="term"><i><tt>token</tt></i>:</span></td><td>the input string associated to that transition</td></tr><tr><td><span class="term"><i><tt>token2</tt></i>:</span></td><td>the second input string associated to that transition</td></tr><tr><td><span class="term"><i><tt>min</tt></i>:</span></td><td>the minimum successive occurences of token</td></tr><tr><td><span class="term"><i><tt>max</tt></i>:</span></td><td>the maximum successive occurences of token</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>data associated to the transition</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the target state or NULL in case of error</td></tr></tbody></table></div></div>
|
---|
148 | <hr/>
|
---|
149 | <div class="refsect2" lang="en"><h3><a name="xmlAutomataNewState"/>xmlAutomataNewState ()</h3><pre class="programlisting"><a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> xmlAutomataNewState (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am)<br/>
|
---|
150 | </pre><p>Create a new disconnected state in the automata</p>
|
---|
151 | <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new state or NULL in case of error</td></tr></tbody></table></div></div>
|
---|
152 | <hr/>
|
---|
153 | <div class="refsect2" lang="en"><h3><a name="xmlAutomataNewTransition"/>xmlAutomataNewTransition ()</h3><pre class="programlisting"><a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> xmlAutomataNewTransition (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * token, <br/> void * data)<br/>
|
---|
154 | </pre><p>If @to is NULL, this creates first a new target state in the automata and then adds a transition from the @from state to the target state activated by the value of @token</p>
|
---|
155 | <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>the starting point of the transition</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>the target point of the transition or NULL</td></tr><tr><td><span class="term"><i><tt>token</tt></i>:</span></td><td>the input string associated to that transition</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>data passed to the callback function if the transition is activated</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the target state or NULL in case of error</td></tr></tbody></table></div></div>
|
---|
156 | <hr/>
|
---|
157 | <div class="refsect2" lang="en"><h3><a name="xmlAutomataNewTransition2"/>xmlAutomataNewTransition2 ()</h3><pre class="programlisting"><a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> xmlAutomataNewTransition2 (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> from, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> to, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * token, <br/> const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * token2, <br/> void * data)<br/>
|
---|
158 | </pre><p>If @to is NULL, this creates first a new target state in the automata and then adds a transition from the @from state to the target state activated by the value of @token</p>
|
---|
159 | <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>from</tt></i>:</span></td><td>the starting point of the transition</td></tr><tr><td><span class="term"><i><tt>to</tt></i>:</span></td><td>the target point of the transition or NULL</td></tr><tr><td><span class="term"><i><tt>token</tt></i>:</span></td><td>the first input string associated to that transition</td></tr><tr><td><span class="term"><i><tt>token2</tt></i>:</span></td><td>the second input string associated to that transition</td></tr><tr><td><span class="term"><i><tt>data</tt></i>:</span></td><td>data passed to the callback function if the transition is activated</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the target state or NULL in case of error</td></tr></tbody></table></div></div>
|
---|
160 | <hr/>
|
---|
161 | <div class="refsect2" lang="en"><h3><a name="xmlAutomataSetFinalState"/>xmlAutomataSetFinalState ()</h3><pre class="programlisting">int xmlAutomataSetFinalState (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am, <br/> <a href="libxml2-xmlautomata.html#xmlAutomataStatePtr">xmlAutomataStatePtr</a> state)<br/>
|
---|
162 | </pre><p>Makes that state a final state</p>
|
---|
163 | <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr><tr><td><span class="term"><i><tt>state</tt></i>:</span></td><td>a state in this automata</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 or -1 in case of error</td></tr></tbody></table></div></div>
|
---|
164 | <hr/>
|
---|
165 | <div class="refsect2" lang="en"><h3><a name="xmlFreeAutomata"/>xmlFreeAutomata ()</h3><pre class="programlisting">void xmlFreeAutomata (<a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> am)<br/>
|
---|
166 | </pre><p>Free an automata</p>
|
---|
167 | <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>am</tt></i>:</span></td><td>an automata</td></tr></tbody></table></div></div>
|
---|
168 | <hr/>
|
---|
169 | <div class="refsect2" lang="en"><h3><a name="xmlNewAutomata"/>xmlNewAutomata ()</h3><pre class="programlisting"><a href="libxml2-xmlautomata.html#xmlAutomataPtr">xmlAutomataPtr</a> xmlNewAutomata (void)<br/>
|
---|
170 | </pre><p>Create a new automata</p>
|
---|
171 | <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the new object or NULL in case of failure</td></tr></tbody></table></div></div>
|
---|
172 | <hr/>
|
---|
173 | </div>
|
---|
174 | </div>
|
---|
175 | </body>
|
---|
176 | </html>
|
---|