blob: 9955051bb8be1264c0b8362a563421bd84e471b0 [file] [log] [blame]
Daniel Veillard80ce3732002-10-07 17:39:30 +00001<HTML
2><HEAD
3><TITLE
4>xmlautomata</TITLE
5><META
6NAME="GENERATOR"
7CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
8"><LINK
9REL="HOME"
10TITLE="Gnome XML Library Reference Manual"
11HREF="book1.html"><LINK
12REL="UP"
13TITLE="Libxml Library Reference"
14HREF="libxml-lib.html"><LINK
15REL="PREVIOUS"
16TITLE="xmlregexp"
17HREF="libxml-xmlregexp.html"><LINK
18REL="NEXT"
19TITLE="xmlunicode"
20HREF="libxml-xmlunicode.html"></HEAD
21><BODY
22CLASS="REFENTRY"
23BGCOLOR="#FFFFFF"
24TEXT="#000000"
25LINK="#0000FF"
26VLINK="#840084"
27ALINK="#0000FF"
28><DIV
29CLASS="NAVHEADER"
30><TABLE
31WIDTH="100%"
32BORDER="0"
33BGCOLOR="#000000"
34CELLPADDING="1"
35CELLSPACING="0"
36><TR
37><TH
38COLSPAN="4"
39ALIGN="center"
40><FONT
41COLOR="#FFFFFF"
42SIZE="5"
43>Gnome XML Library Reference Manual</FONT
44></TH
45></TR
46><TR
47><TD
48WIDTH="25%"
49BGCOLOR="#C00000"
50ALIGN="left"
51><A
52HREF="libxml-xmlregexp.html"
53><FONT
54COLOR="#FFFFFF"
55SIZE="3"
56><B
57>&#60;&#60;&#60; Previous Page</B
58></FONT
59></A
60></TD
61><TD
62WIDTH="25%"
63BGCOLOR="#0000C0"
64ALIGN="center"
65><FONT
66COLOR="#FFFFFF"
67SIZE="3"
68><B
69><A
70HREF="book1.html"
71><FONT
72COLOR="#FFFFFF"
73SIZE="3"
74><B
75>Home</B
76></FONT
77></A
78></B
79></FONT
80></TD
81><TD
82WIDTH="25%"
83BGCOLOR="#00C000"
84ALIGN="center"
85><FONT
86COLOR="#FFFFFF"
87SIZE="3"
88><B
89><A
90HREF="libxml-lib.html"
91><FONT
92COLOR="#FFFFFF"
93SIZE="3"
94><B
95>Up</B
96></FONT
97></A
98></B
99></FONT
100></TD
101><TD
102WIDTH="25%"
103BGCOLOR="#C00000"
104ALIGN="right"
105><A
106HREF="libxml-xmlunicode.html"
107><FONT
108COLOR="#FFFFFF"
109SIZE="3"
110><B
111>Next Page &#62;&#62;&#62;</B
112></FONT
113></A
114></TD
115></TR
116></TABLE
117></DIV
118><H1
119><A
120NAME="LIBXML-XMLAUTOMATA">xmlautomata</H1
121><DIV
122CLASS="REFNAMEDIV"
123><A
124NAME="AEN27945"
125></A
126><H2
127>Name</H2
128>xmlautomata&nbsp;--&nbsp;</DIV
129><DIV
130CLASS="REFSYNOPSISDIV"
131><A
132NAME="AEN27948"><H2
133>Synopsis</H2
134><TABLE
135BORDER="0"
136BGCOLOR="#D6E8FF"
137WIDTH="100%"
138CELLPADDING="6"
139><TR
140><TD
141><PRE
142CLASS="SYNOPSIS"
143>&#13;
144
145struct <A
146HREF="libxml-xmlautomata.html#XMLAUTOMATA"
147>xmlAutomata</A
148>;
149typedef <A
150HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
151>xmlAutomataPtr</A
152>;
153struct <A
154HREF="libxml-xmlautomata.html#XMLAUTOMATASTATE"
155>xmlAutomataState</A
156>;
157typedef <A
158HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
159>xmlAutomataStatePtr</A
160>;
161<A
162HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
163>xmlAutomataPtr</A
164> <A
165HREF="libxml-xmlautomata.html#XMLNEWAUTOMATA"
166>xmlNewAutomata</A
167> (void);
168void <A
169HREF="libxml-xmlautomata.html#XMLFREEAUTOMATA"
170>xmlFreeAutomata</A
171> (<A
172HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
173>xmlAutomataPtr</A
174> am);
175<A
176HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
177>xmlAutomataStatePtr</A
178> <A
179HREF="libxml-xmlautomata.html#XMLAUTOMATAGETINITSTATE"
180>xmlAutomataGetInitState</A
181> (<A
182HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
183>xmlAutomataPtr</A
184> am);
185int <A
186HREF="libxml-xmlautomata.html#XMLAUTOMATASETFINALSTATE"
187>xmlAutomataSetFinalState</A
188> (<A
189HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
190>xmlAutomataPtr</A
191> am,
192 <A
193HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
194>xmlAutomataStatePtr</A
195> state);
196<A
197HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
198>xmlAutomataStatePtr</A
199> <A
200HREF="libxml-xmlautomata.html#XMLAUTOMATANEWSTATE"
201>xmlAutomataNewState</A
202> (<A
203HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
204>xmlAutomataPtr</A
205> am);
206<A
207HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
208>xmlAutomataStatePtr</A
209> <A
210HREF="libxml-xmlautomata.html#XMLAUTOMATANEWTRANSITION"
211>xmlAutomataNewTransition</A
212>
213 (<A
214HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
215>xmlAutomataPtr</A
216> am,
217 <A
218HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
219>xmlAutomataStatePtr</A
220> from,
221 <A
222HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
223>xmlAutomataStatePtr</A
224> to,
225 const <A
226HREF="libxml-tree.html#XMLCHAR"
227>xmlChar</A
228> *token,
229 void *data);
230<A
231HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
232>xmlAutomataStatePtr</A
233> <A
234HREF="libxml-xmlautomata.html#XMLAUTOMATANEWCOUNTTRANS"
235>xmlAutomataNewCountTrans</A
236>
237 (<A
238HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
239>xmlAutomataPtr</A
240> am,
241 <A
242HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
243>xmlAutomataStatePtr</A
244> from,
245 <A
246HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
247>xmlAutomataStatePtr</A
248> to,
249 const <A
250HREF="libxml-tree.html#XMLCHAR"
251>xmlChar</A
252> *token,
253 int min,
254 int max,
255 void *data);
256<A
257HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
258>xmlAutomataStatePtr</A
259> <A
260HREF="libxml-xmlautomata.html#XMLAUTOMATANEWONCETRANS"
261>xmlAutomataNewOnceTrans</A
262> (<A
263HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
264>xmlAutomataPtr</A
265> am,
266 <A
267HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
268>xmlAutomataStatePtr</A
269> from,
270 <A
271HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
272>xmlAutomataStatePtr</A
273> to,
274 const <A
275HREF="libxml-tree.html#XMLCHAR"
276>xmlChar</A
277> *token,
278 int min,
279 int max,
280 void *data);
281<A
282HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
283>xmlAutomataStatePtr</A
284> <A
285HREF="libxml-xmlautomata.html#XMLAUTOMATANEWALLTRANS"
286>xmlAutomataNewAllTrans</A
287> (<A
288HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
289>xmlAutomataPtr</A
290> am,
291 <A
292HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
293>xmlAutomataStatePtr</A
294> from,
295 <A
296HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
297>xmlAutomataStatePtr</A
298> to,
299 int lax);
300<A
301HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
302>xmlAutomataStatePtr</A
303> <A
304HREF="libxml-xmlautomata.html#XMLAUTOMATANEWEPSILON"
305>xmlAutomataNewEpsilon</A
306> (<A
307HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
308>xmlAutomataPtr</A
309> am,
310 <A
311HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
312>xmlAutomataStatePtr</A
313> from,
314 <A
315HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
316>xmlAutomataStatePtr</A
317> to);
318<A
319HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
320>xmlAutomataStatePtr</A
321> <A
322HREF="libxml-xmlautomata.html#XMLAUTOMATANEWCOUNTEDTRANS"
323>xmlAutomataNewCountedTrans</A
324>
325 (<A
326HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
327>xmlAutomataPtr</A
328> am,
329 <A
330HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
331>xmlAutomataStatePtr</A
332> from,
333 <A
334HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
335>xmlAutomataStatePtr</A
336> to,
337 int counter);
338<A
339HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
340>xmlAutomataStatePtr</A
341> <A
342HREF="libxml-xmlautomata.html#XMLAUTOMATANEWCOUNTERTRANS"
343>xmlAutomataNewCounterTrans</A
344>
345 (<A
346HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
347>xmlAutomataPtr</A
348> am,
349 <A
350HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
351>xmlAutomataStatePtr</A
352> from,
353 <A
354HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
355>xmlAutomataStatePtr</A
356> to,
357 int counter);
358int <A
359HREF="libxml-xmlautomata.html#XMLAUTOMATANEWCOUNTER"
360>xmlAutomataNewCounter</A
361> (<A
362HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
363>xmlAutomataPtr</A
364> am,
365 int min,
366 int max);
367<A
368HREF="libxml-xmlregexp.html#XMLREGEXPPTR"
369>xmlRegexpPtr</A
370> <A
371HREF="libxml-xmlautomata.html#XMLAUTOMATACOMPILE"
372>xmlAutomataCompile</A
373> (<A
374HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
375>xmlAutomataPtr</A
376> am);
377int <A
378HREF="libxml-xmlautomata.html#XMLAUTOMATAISDETERMINIST"
379>xmlAutomataIsDeterminist</A
380> (<A
381HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
382>xmlAutomataPtr</A
383> am);</PRE
384></TD
385></TR
386></TABLE
387></DIV
388><DIV
389CLASS="REFSECT1"
390><A
391NAME="AEN28013"
392></A
393><H2
394>Description</H2
395><P
396></P
397></DIV
398><DIV
399CLASS="REFSECT1"
400><A
401NAME="AEN28016"
402></A
403><H2
404>Details</H2
405><DIV
406CLASS="REFSECT2"
407><A
408NAME="AEN28018"
409></A
410><H3
411><A
412NAME="XMLAUTOMATA"
413></A
414>struct xmlAutomata</H3
415><TABLE
416BORDER="0"
417BGCOLOR="#D6E8FF"
418WIDTH="100%"
419CELLPADDING="6"
420><TR
421><TD
422><PRE
423CLASS="PROGRAMLISTING"
424>struct xmlAutomata;</PRE
425></TD
426></TR
427></TABLE
428><P
429></P
430></DIV
431><HR><DIV
432CLASS="REFSECT2"
433><A
434NAME="AEN28023"
435></A
436><H3
437><A
438NAME="XMLAUTOMATAPTR"
439></A
440>xmlAutomataPtr</H3
441><TABLE
442BORDER="0"
443BGCOLOR="#D6E8FF"
444WIDTH="100%"
445CELLPADDING="6"
446><TR
447><TD
448><PRE
449CLASS="PROGRAMLISTING"
450>typedef xmlAutomata *xmlAutomataPtr;</PRE
451></TD
452></TR
453></TABLE
454><P
455>A libxml automata description, It can be compiled into a regexp</P
456><P
457></P
458></DIV
459><HR><DIV
460CLASS="REFSECT2"
461><A
462NAME="AEN28029"
463></A
464><H3
465><A
466NAME="XMLAUTOMATASTATE"
467></A
468>struct xmlAutomataState</H3
469><TABLE
470BORDER="0"
471BGCOLOR="#D6E8FF"
472WIDTH="100%"
473CELLPADDING="6"
474><TR
475><TD
476><PRE
477CLASS="PROGRAMLISTING"
478>struct xmlAutomataState;</PRE
479></TD
480></TR
481></TABLE
482><P
483></P
484></DIV
485><HR><DIV
486CLASS="REFSECT2"
487><A
488NAME="AEN28034"
489></A
490><H3
491><A
492NAME="XMLAUTOMATASTATEPTR"
493></A
494>xmlAutomataStatePtr</H3
495><TABLE
496BORDER="0"
497BGCOLOR="#D6E8FF"
498WIDTH="100%"
499CELLPADDING="6"
500><TR
501><TD
502><PRE
503CLASS="PROGRAMLISTING"
504>typedef xmlAutomataState *xmlAutomataStatePtr;</PRE
505></TD
506></TR
507></TABLE
508><P
509>A state int the automata description,</P
510><P
511></P
512></DIV
513><HR><DIV
514CLASS="REFSECT2"
515><A
516NAME="AEN28040"
517></A
518><H3
519><A
520NAME="XMLNEWAUTOMATA"
521></A
522>xmlNewAutomata ()</H3
523><TABLE
524BORDER="0"
525BGCOLOR="#D6E8FF"
526WIDTH="100%"
527CELLPADDING="6"
528><TR
529><TD
530><PRE
531CLASS="PROGRAMLISTING"
532><A
533HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
534>xmlAutomataPtr</A
535> xmlNewAutomata (void);</PRE
536></TD
537></TR
538></TABLE
539><P
540>Create a new automata</P
541><P
542></P
543><DIV
544CLASS="INFORMALTABLE"
545><A
546NAME="AEN28047"><P
547></P
548><TABLE
549BORDER="0"
550WIDTH="100%"
551BGCOLOR="#FFD0D0"
552CELLSPACING="0"
553CELLPADDING="4"
554CLASS="CALSTABLE"
555><TBODY
556><TR
557><TD
558WIDTH="20%"
559ALIGN="RIGHT"
560VALIGN="TOP"
561><SPAN
562CLASS="emphasis"
563><I
564CLASS="EMPHASIS"
565>Returns</I
566></SPAN
567> :</TD
568><TD
569WIDTH="80%"
570ALIGN="LEFT"
571VALIGN="TOP"
572>the new object or NULL in case of failure</TD
573></TR
574></TBODY
575></TABLE
576><P
577></P
578></DIV
579></DIV
580><HR><DIV
581CLASS="REFSECT2"
582><A
583NAME="AEN28056"
584></A
585><H3
586><A
587NAME="XMLFREEAUTOMATA"
588></A
589>xmlFreeAutomata ()</H3
590><TABLE
591BORDER="0"
592BGCOLOR="#D6E8FF"
593WIDTH="100%"
594CELLPADDING="6"
595><TR
596><TD
597><PRE
598CLASS="PROGRAMLISTING"
599>void xmlFreeAutomata (<A
600HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
601>xmlAutomataPtr</A
602> am);</PRE
603></TD
604></TR
605></TABLE
606><P
607>Free an automata</P
608><P
609></P
610><DIV
611CLASS="INFORMALTABLE"
612><A
613NAME="AEN28063"><P
614></P
615><TABLE
616BORDER="0"
617WIDTH="100%"
618BGCOLOR="#FFD0D0"
619CELLSPACING="0"
620CELLPADDING="4"
621CLASS="CALSTABLE"
622><TBODY
623><TR
624><TD
625WIDTH="20%"
626ALIGN="RIGHT"
627VALIGN="TOP"
628><TT
629CLASS="PARAMETER"
630><I
631>am</I
632></TT
633>&nbsp;:</TD
634><TD
635WIDTH="80%"
636ALIGN="LEFT"
637VALIGN="TOP"
638> an automata</TD
639></TR
640></TBODY
641></TABLE
642><P
643></P
644></DIV
645></DIV
646><HR><DIV
647CLASS="REFSECT2"
648><A
649NAME="AEN28072"
650></A
651><H3
652><A
653NAME="XMLAUTOMATAGETINITSTATE"
654></A
655>xmlAutomataGetInitState ()</H3
656><TABLE
657BORDER="0"
658BGCOLOR="#D6E8FF"
659WIDTH="100%"
660CELLPADDING="6"
661><TR
662><TD
663><PRE
664CLASS="PROGRAMLISTING"
665><A
666HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
667>xmlAutomataStatePtr</A
668> xmlAutomataGetInitState (<A
669HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
670>xmlAutomataPtr</A
671> am);</PRE
672></TD
673></TR
674></TABLE
675><P
676></P
677><P
678></P
679><DIV
680CLASS="INFORMALTABLE"
681><A
682NAME="AEN28080"><P
683></P
684><TABLE
685BORDER="0"
686WIDTH="100%"
687BGCOLOR="#FFD0D0"
688CELLSPACING="0"
689CELLPADDING="4"
690CLASS="CALSTABLE"
691><TBODY
692><TR
693><TD
694WIDTH="20%"
695ALIGN="RIGHT"
696VALIGN="TOP"
697><TT
698CLASS="PARAMETER"
699><I
700>am</I
701></TT
702>&nbsp;:</TD
703><TD
704WIDTH="80%"
705ALIGN="LEFT"
706VALIGN="TOP"
707> an automata</TD
708></TR
709><TR
710><TD
711WIDTH="20%"
712ALIGN="RIGHT"
713VALIGN="TOP"
714><SPAN
715CLASS="emphasis"
716><I
717CLASS="EMPHASIS"
718>Returns</I
719></SPAN
720> :</TD
721><TD
722WIDTH="80%"
723ALIGN="LEFT"
724VALIGN="TOP"
725>the initial state of the automata</TD
726></TR
727></TBODY
728></TABLE
729><P
730></P
731></DIV
732></DIV
733><HR><DIV
734CLASS="REFSECT2"
735><A
736NAME="AEN28093"
737></A
738><H3
739><A
740NAME="XMLAUTOMATASETFINALSTATE"
741></A
742>xmlAutomataSetFinalState ()</H3
743><TABLE
744BORDER="0"
745BGCOLOR="#D6E8FF"
746WIDTH="100%"
747CELLPADDING="6"
748><TR
749><TD
750><PRE
751CLASS="PROGRAMLISTING"
752>int xmlAutomataSetFinalState (<A
753HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
754>xmlAutomataPtr</A
755> am,
756 <A
757HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
758>xmlAutomataStatePtr</A
759> state);</PRE
760></TD
761></TR
762></TABLE
763><P
764>Makes that state a final state</P
765><P
766></P
767><DIV
768CLASS="INFORMALTABLE"
769><A
770NAME="AEN28101"><P
771></P
772><TABLE
773BORDER="0"
774WIDTH="100%"
775BGCOLOR="#FFD0D0"
776CELLSPACING="0"
777CELLPADDING="4"
778CLASS="CALSTABLE"
779><TBODY
780><TR
781><TD
782WIDTH="20%"
783ALIGN="RIGHT"
784VALIGN="TOP"
785><TT
786CLASS="PARAMETER"
787><I
788>am</I
789></TT
790>&nbsp;:</TD
791><TD
792WIDTH="80%"
793ALIGN="LEFT"
794VALIGN="TOP"
795> an automata</TD
796></TR
797><TR
798><TD
799WIDTH="20%"
800ALIGN="RIGHT"
801VALIGN="TOP"
802><TT
803CLASS="PARAMETER"
804><I
805>state</I
806></TT
807>&nbsp;:</TD
808><TD
809WIDTH="80%"
810ALIGN="LEFT"
811VALIGN="TOP"
812> a state in this automata</TD
813></TR
814><TR
815><TD
816WIDTH="20%"
817ALIGN="RIGHT"
818VALIGN="TOP"
819><SPAN
820CLASS="emphasis"
821><I
822CLASS="EMPHASIS"
823>Returns</I
824></SPAN
825> :</TD
826><TD
827WIDTH="80%"
828ALIGN="LEFT"
829VALIGN="TOP"
830>0 or -1 in case of error</TD
831></TR
832></TBODY
833></TABLE
834><P
835></P
836></DIV
837></DIV
838><HR><DIV
839CLASS="REFSECT2"
840><A
841NAME="AEN28118"
842></A
843><H3
844><A
845NAME="XMLAUTOMATANEWSTATE"
846></A
847>xmlAutomataNewState ()</H3
848><TABLE
849BORDER="0"
850BGCOLOR="#D6E8FF"
851WIDTH="100%"
852CELLPADDING="6"
853><TR
854><TD
855><PRE
856CLASS="PROGRAMLISTING"
857><A
858HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
859>xmlAutomataStatePtr</A
860> xmlAutomataNewState (<A
861HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
862>xmlAutomataPtr</A
863> am);</PRE
864></TD
865></TR
866></TABLE
867><P
868>Create a new disconnected state in the automata</P
869><P
870></P
871><DIV
872CLASS="INFORMALTABLE"
873><A
874NAME="AEN28126"><P
875></P
876><TABLE
877BORDER="0"
878WIDTH="100%"
879BGCOLOR="#FFD0D0"
880CELLSPACING="0"
881CELLPADDING="4"
882CLASS="CALSTABLE"
883><TBODY
884><TR
885><TD
886WIDTH="20%"
887ALIGN="RIGHT"
888VALIGN="TOP"
889><TT
890CLASS="PARAMETER"
891><I
892>am</I
893></TT
894>&nbsp;:</TD
895><TD
896WIDTH="80%"
897ALIGN="LEFT"
898VALIGN="TOP"
899> an automata</TD
900></TR
901><TR
902><TD
903WIDTH="20%"
904ALIGN="RIGHT"
905VALIGN="TOP"
906><SPAN
907CLASS="emphasis"
908><I
909CLASS="EMPHASIS"
910>Returns</I
911></SPAN
912> :</TD
913><TD
914WIDTH="80%"
915ALIGN="LEFT"
916VALIGN="TOP"
917>the new state or NULL in case of error</TD
918></TR
919></TBODY
920></TABLE
921><P
922></P
923></DIV
924></DIV
925><HR><DIV
926CLASS="REFSECT2"
927><A
928NAME="AEN28139"
929></A
930><H3
931><A
932NAME="XMLAUTOMATANEWTRANSITION"
933></A
934>xmlAutomataNewTransition ()</H3
935><TABLE
936BORDER="0"
937BGCOLOR="#D6E8FF"
938WIDTH="100%"
939CELLPADDING="6"
940><TR
941><TD
942><PRE
943CLASS="PROGRAMLISTING"
944><A
945HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
946>xmlAutomataStatePtr</A
947> xmlAutomataNewTransition
948 (<A
949HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
950>xmlAutomataPtr</A
951> am,
952 <A
953HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
954>xmlAutomataStatePtr</A
955> from,
956 <A
957HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
958>xmlAutomataStatePtr</A
959> to,
960 const <A
961HREF="libxml-tree.html#XMLCHAR"
962>xmlChar</A
963> *token,
964 void *data);</PRE
965></TD
966></TR
967></TABLE
968><P
969>If <TT
970CLASS="PARAMETER"
971><I
972>to</I
973></TT
974> is NULL, this create first a new target state in the automata
975and then adds a an epsilon transition from the <TT
976CLASS="PARAMETER"
977><I
978>from</I
979></TT
980> state to the
981target state</P
982><P
983></P
984><DIV
985CLASS="INFORMALTABLE"
986><A
987NAME="AEN28152"><P
988></P
989><TABLE
990BORDER="0"
991WIDTH="100%"
992BGCOLOR="#FFD0D0"
993CELLSPACING="0"
994CELLPADDING="4"
995CLASS="CALSTABLE"
996><TBODY
997><TR
998><TD
999WIDTH="20%"
1000ALIGN="RIGHT"
1001VALIGN="TOP"
1002><TT
1003CLASS="PARAMETER"
1004><I
1005>am</I
1006></TT
1007>&nbsp;:</TD
1008><TD
1009WIDTH="80%"
1010ALIGN="LEFT"
1011VALIGN="TOP"
1012> an automata</TD
1013></TR
1014><TR
1015><TD
1016WIDTH="20%"
1017ALIGN="RIGHT"
1018VALIGN="TOP"
1019><TT
1020CLASS="PARAMETER"
1021><I
1022>from</I
1023></TT
1024>&nbsp;:</TD
1025><TD
1026WIDTH="80%"
1027ALIGN="LEFT"
1028VALIGN="TOP"
1029> the starting point of the transition</TD
1030></TR
1031><TR
1032><TD
1033WIDTH="20%"
1034ALIGN="RIGHT"
1035VALIGN="TOP"
1036><TT
1037CLASS="PARAMETER"
1038><I
1039>to</I
1040></TT
1041>&nbsp;:</TD
1042><TD
1043WIDTH="80%"
1044ALIGN="LEFT"
1045VALIGN="TOP"
1046> the target point of the transition or NULL</TD
1047></TR
1048><TR
1049><TD
1050WIDTH="20%"
1051ALIGN="RIGHT"
1052VALIGN="TOP"
1053><TT
1054CLASS="PARAMETER"
1055><I
1056>token</I
1057></TT
1058>&nbsp;:</TD
1059><TD
1060WIDTH="80%"
1061ALIGN="LEFT"
1062VALIGN="TOP"
1063>&nbsp;</TD
1064></TR
1065><TR
1066><TD
1067WIDTH="20%"
1068ALIGN="RIGHT"
1069VALIGN="TOP"
1070><TT
1071CLASS="PARAMETER"
1072><I
1073>data</I
1074></TT
1075>&nbsp;:</TD
1076><TD
1077WIDTH="80%"
1078ALIGN="LEFT"
1079VALIGN="TOP"
1080>&nbsp;</TD
1081></TR
1082><TR
1083><TD
1084WIDTH="20%"
1085ALIGN="RIGHT"
1086VALIGN="TOP"
1087><SPAN
1088CLASS="emphasis"
1089><I
1090CLASS="EMPHASIS"
1091>Returns</I
1092></SPAN
1093> :</TD
1094><TD
1095WIDTH="80%"
1096ALIGN="LEFT"
1097VALIGN="TOP"
1098>the target state or NULL in case of error</TD
1099></TR
1100></TBODY
1101></TABLE
1102><P
1103></P
1104></DIV
1105></DIV
1106><HR><DIV
1107CLASS="REFSECT2"
1108><A
1109NAME="AEN28181"
1110></A
1111><H3
1112><A
1113NAME="XMLAUTOMATANEWCOUNTTRANS"
1114></A
1115>xmlAutomataNewCountTrans ()</H3
1116><TABLE
1117BORDER="0"
1118BGCOLOR="#D6E8FF"
1119WIDTH="100%"
1120CELLPADDING="6"
1121><TR
1122><TD
1123><PRE
1124CLASS="PROGRAMLISTING"
1125><A
1126HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
1127>xmlAutomataStatePtr</A
1128> xmlAutomataNewCountTrans
1129 (<A
1130HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
1131>xmlAutomataPtr</A
1132> am,
1133 <A
1134HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
1135>xmlAutomataStatePtr</A
1136> from,
1137 <A
1138HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
1139>xmlAutomataStatePtr</A
1140> to,
1141 const <A
1142HREF="libxml-tree.html#XMLCHAR"
1143>xmlChar</A
1144> *token,
1145 int min,
1146 int max,
1147 void *data);</PRE
1148></TD
1149></TR
1150></TABLE
1151><P
1152>If <TT
1153CLASS="PARAMETER"
1154><I
1155>to</I
1156></TT
1157> is NULL, this create first a new target state in the automata
1158and then adds a transition from the <TT
1159CLASS="PARAMETER"
1160><I
1161>from</I
1162></TT
1163> state to the target state
1164activated by a succession of input of value <TT
1165CLASS="PARAMETER"
1166><I
1167>token</I
1168></TT
1169> and whose number
1170is between <TT
1171CLASS="PARAMETER"
1172><I
1173>min</I
1174></TT
1175> and <TT
1176CLASS="PARAMETER"
1177><I
1178>max</I
1179></TT
1180></P
1181><P
1182></P
1183><DIV
1184CLASS="INFORMALTABLE"
1185><A
1186NAME="AEN28197"><P
1187></P
1188><TABLE
1189BORDER="0"
1190WIDTH="100%"
1191BGCOLOR="#FFD0D0"
1192CELLSPACING="0"
1193CELLPADDING="4"
1194CLASS="CALSTABLE"
1195><TBODY
1196><TR
1197><TD
1198WIDTH="20%"
1199ALIGN="RIGHT"
1200VALIGN="TOP"
1201><TT
1202CLASS="PARAMETER"
1203><I
1204>am</I
1205></TT
1206>&nbsp;:</TD
1207><TD
1208WIDTH="80%"
1209ALIGN="LEFT"
1210VALIGN="TOP"
1211> an automata</TD
1212></TR
1213><TR
1214><TD
1215WIDTH="20%"
1216ALIGN="RIGHT"
1217VALIGN="TOP"
1218><TT
1219CLASS="PARAMETER"
1220><I
1221>from</I
1222></TT
1223>&nbsp;:</TD
1224><TD
1225WIDTH="80%"
1226ALIGN="LEFT"
1227VALIGN="TOP"
1228> the starting point of the transition</TD
1229></TR
1230><TR
1231><TD
1232WIDTH="20%"
1233ALIGN="RIGHT"
1234VALIGN="TOP"
1235><TT
1236CLASS="PARAMETER"
1237><I
1238>to</I
1239></TT
1240>&nbsp;:</TD
1241><TD
1242WIDTH="80%"
1243ALIGN="LEFT"
1244VALIGN="TOP"
1245> the target point of the transition or NULL</TD
1246></TR
1247><TR
1248><TD
1249WIDTH="20%"
1250ALIGN="RIGHT"
1251VALIGN="TOP"
1252><TT
1253CLASS="PARAMETER"
1254><I
1255>token</I
1256></TT
1257>&nbsp;:</TD
1258><TD
1259WIDTH="80%"
1260ALIGN="LEFT"
1261VALIGN="TOP"
1262> the input string associated to that transition</TD
1263></TR
1264><TR
1265><TD
1266WIDTH="20%"
1267ALIGN="RIGHT"
1268VALIGN="TOP"
1269><TT
1270CLASS="PARAMETER"
1271><I
1272>min</I
1273></TT
1274>&nbsp;:</TD
1275><TD
1276WIDTH="80%"
1277ALIGN="LEFT"
1278VALIGN="TOP"
1279> the minimum successive occurences of token</TD
1280></TR
1281><TR
1282><TD
1283WIDTH="20%"
1284ALIGN="RIGHT"
1285VALIGN="TOP"
1286><TT
1287CLASS="PARAMETER"
1288><I
1289>max</I
1290></TT
1291>&nbsp;:</TD
1292><TD
1293WIDTH="80%"
1294ALIGN="LEFT"
1295VALIGN="TOP"
1296>&nbsp;</TD
1297></TR
1298><TR
1299><TD
1300WIDTH="20%"
1301ALIGN="RIGHT"
1302VALIGN="TOP"
1303><TT
1304CLASS="PARAMETER"
1305><I
1306>data</I
1307></TT
1308>&nbsp;:</TD
1309><TD
1310WIDTH="80%"
1311ALIGN="LEFT"
1312VALIGN="TOP"
1313>&nbsp;</TD
1314></TR
1315><TR
1316><TD
1317WIDTH="20%"
1318ALIGN="RIGHT"
1319VALIGN="TOP"
1320><SPAN
1321CLASS="emphasis"
1322><I
1323CLASS="EMPHASIS"
1324>Returns</I
1325></SPAN
1326> :</TD
1327><TD
1328WIDTH="80%"
1329ALIGN="LEFT"
1330VALIGN="TOP"
1331>the target state or NULL in case of error</TD
1332></TR
1333></TBODY
1334></TABLE
1335><P
1336></P
1337></DIV
1338></DIV
1339><HR><DIV
1340CLASS="REFSECT2"
1341><A
1342NAME="AEN28234"
1343></A
1344><H3
1345><A
1346NAME="XMLAUTOMATANEWONCETRANS"
1347></A
1348>xmlAutomataNewOnceTrans ()</H3
1349><TABLE
1350BORDER="0"
1351BGCOLOR="#D6E8FF"
1352WIDTH="100%"
1353CELLPADDING="6"
1354><TR
1355><TD
1356><PRE
1357CLASS="PROGRAMLISTING"
1358><A
1359HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
1360>xmlAutomataStatePtr</A
1361> xmlAutomataNewOnceTrans (<A
1362HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
1363>xmlAutomataPtr</A
1364> am,
1365 <A
1366HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
1367>xmlAutomataStatePtr</A
1368> from,
1369 <A
1370HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
1371>xmlAutomataStatePtr</A
1372> to,
1373 const <A
1374HREF="libxml-tree.html#XMLCHAR"
1375>xmlChar</A
1376> *token,
1377 int min,
1378 int max,
1379 void *data);</PRE
1380></TD
1381></TR
1382></TABLE
1383><P
1384>If <TT
1385CLASS="PARAMETER"
1386><I
1387>to</I
1388></TT
1389> is NULL, this create first a new target state in the automata
1390and then adds a transition from the <TT
1391CLASS="PARAMETER"
1392><I
1393>from</I
1394></TT
1395> state to the target state
1396activated by a succession of input of value <TT
1397CLASS="PARAMETER"
1398><I
1399>token</I
1400></TT
1401> and whose number
1402is between <TT
1403CLASS="PARAMETER"
1404><I
1405>min</I
1406></TT
1407> and <TT
1408CLASS="PARAMETER"
1409><I
1410>max</I
1411></TT
1412>, moreover that transistion can only be crossed
1413once.</P
1414><P
1415></P
1416><DIV
1417CLASS="INFORMALTABLE"
1418><A
1419NAME="AEN28250"><P
1420></P
1421><TABLE
1422BORDER="0"
1423WIDTH="100%"
1424BGCOLOR="#FFD0D0"
1425CELLSPACING="0"
1426CELLPADDING="4"
1427CLASS="CALSTABLE"
1428><TBODY
1429><TR
1430><TD
1431WIDTH="20%"
1432ALIGN="RIGHT"
1433VALIGN="TOP"
1434><TT
1435CLASS="PARAMETER"
1436><I
1437>am</I
1438></TT
1439>&nbsp;:</TD
1440><TD
1441WIDTH="80%"
1442ALIGN="LEFT"
1443VALIGN="TOP"
1444> an automata</TD
1445></TR
1446><TR
1447><TD
1448WIDTH="20%"
1449ALIGN="RIGHT"
1450VALIGN="TOP"
1451><TT
1452CLASS="PARAMETER"
1453><I
1454>from</I
1455></TT
1456>&nbsp;:</TD
1457><TD
1458WIDTH="80%"
1459ALIGN="LEFT"
1460VALIGN="TOP"
1461> the starting point of the transition</TD
1462></TR
1463><TR
1464><TD
1465WIDTH="20%"
1466ALIGN="RIGHT"
1467VALIGN="TOP"
1468><TT
1469CLASS="PARAMETER"
1470><I
1471>to</I
1472></TT
1473>&nbsp;:</TD
1474><TD
1475WIDTH="80%"
1476ALIGN="LEFT"
1477VALIGN="TOP"
1478> the target point of the transition or NULL</TD
1479></TR
1480><TR
1481><TD
1482WIDTH="20%"
1483ALIGN="RIGHT"
1484VALIGN="TOP"
1485><TT
1486CLASS="PARAMETER"
1487><I
1488>token</I
1489></TT
1490>&nbsp;:</TD
1491><TD
1492WIDTH="80%"
1493ALIGN="LEFT"
1494VALIGN="TOP"
1495> the input string associated to that transition</TD
1496></TR
1497><TR
1498><TD
1499WIDTH="20%"
1500ALIGN="RIGHT"
1501VALIGN="TOP"
1502><TT
1503CLASS="PARAMETER"
1504><I
1505>min</I
1506></TT
1507>&nbsp;:</TD
1508><TD
1509WIDTH="80%"
1510ALIGN="LEFT"
1511VALIGN="TOP"
1512> the minimum successive occurences of token</TD
1513></TR
1514><TR
1515><TD
1516WIDTH="20%"
1517ALIGN="RIGHT"
1518VALIGN="TOP"
1519><TT
1520CLASS="PARAMETER"
1521><I
1522>max</I
1523></TT
1524>&nbsp;:</TD
1525><TD
1526WIDTH="80%"
1527ALIGN="LEFT"
1528VALIGN="TOP"
1529>&nbsp;</TD
1530></TR
1531><TR
1532><TD
1533WIDTH="20%"
1534ALIGN="RIGHT"
1535VALIGN="TOP"
1536><TT
1537CLASS="PARAMETER"
1538><I
1539>data</I
1540></TT
1541>&nbsp;:</TD
1542><TD
1543WIDTH="80%"
1544ALIGN="LEFT"
1545VALIGN="TOP"
1546>&nbsp;</TD
1547></TR
1548><TR
1549><TD
1550WIDTH="20%"
1551ALIGN="RIGHT"
1552VALIGN="TOP"
1553><SPAN
1554CLASS="emphasis"
1555><I
1556CLASS="EMPHASIS"
1557>Returns</I
1558></SPAN
1559> :</TD
1560><TD
1561WIDTH="80%"
1562ALIGN="LEFT"
1563VALIGN="TOP"
1564>the target state or NULL in case of error</TD
1565></TR
1566></TBODY
1567></TABLE
1568><P
1569></P
1570></DIV
1571></DIV
1572><HR><DIV
1573CLASS="REFSECT2"
1574><A
1575NAME="AEN28287"
1576></A
1577><H3
1578><A
1579NAME="XMLAUTOMATANEWALLTRANS"
1580></A
1581>xmlAutomataNewAllTrans ()</H3
1582><TABLE
1583BORDER="0"
1584BGCOLOR="#D6E8FF"
1585WIDTH="100%"
1586CELLPADDING="6"
1587><TR
1588><TD
1589><PRE
1590CLASS="PROGRAMLISTING"
1591><A
1592HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
1593>xmlAutomataStatePtr</A
1594> xmlAutomataNewAllTrans (<A
1595HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
1596>xmlAutomataPtr</A
1597> am,
1598 <A
1599HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
1600>xmlAutomataStatePtr</A
1601> from,
1602 <A
1603HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
1604>xmlAutomataStatePtr</A
1605> to,
1606 int lax);</PRE
1607></TD
1608></TR
1609></TABLE
1610><P
1611>If <TT
1612CLASS="PARAMETER"
1613><I
1614>to</I
1615></TT
1616> is NULL, this create first a new target state in the automata
1617and then adds a an ALL transition from the <TT
1618CLASS="PARAMETER"
1619><I
1620>from</I
1621></TT
1622> state to the
1623target state. That transition is an epsilon transition allowed only when
1624all transitions from the <TT
1625CLASS="PARAMETER"
1626><I
1627>from</I
1628></TT
1629> node have been activated.</P
1630><P
1631></P
1632><DIV
1633CLASS="INFORMALTABLE"
1634><A
1635NAME="AEN28300"><P
1636></P
1637><TABLE
1638BORDER="0"
1639WIDTH="100%"
1640BGCOLOR="#FFD0D0"
1641CELLSPACING="0"
1642CELLPADDING="4"
1643CLASS="CALSTABLE"
1644><TBODY
1645><TR
1646><TD
1647WIDTH="20%"
1648ALIGN="RIGHT"
1649VALIGN="TOP"
1650><TT
1651CLASS="PARAMETER"
1652><I
1653>am</I
1654></TT
1655>&nbsp;:</TD
1656><TD
1657WIDTH="80%"
1658ALIGN="LEFT"
1659VALIGN="TOP"
1660> an automata</TD
1661></TR
1662><TR
1663><TD
1664WIDTH="20%"
1665ALIGN="RIGHT"
1666VALIGN="TOP"
1667><TT
1668CLASS="PARAMETER"
1669><I
1670>from</I
1671></TT
1672>&nbsp;:</TD
1673><TD
1674WIDTH="80%"
1675ALIGN="LEFT"
1676VALIGN="TOP"
1677> the starting point of the transition</TD
1678></TR
1679><TR
1680><TD
1681WIDTH="20%"
1682ALIGN="RIGHT"
1683VALIGN="TOP"
1684><TT
1685CLASS="PARAMETER"
1686><I
1687>to</I
1688></TT
1689>&nbsp;:</TD
1690><TD
1691WIDTH="80%"
1692ALIGN="LEFT"
1693VALIGN="TOP"
1694> the target point of the transition or NULL</TD
1695></TR
1696><TR
1697><TD
1698WIDTH="20%"
1699ALIGN="RIGHT"
1700VALIGN="TOP"
1701><TT
1702CLASS="PARAMETER"
1703><I
1704>lax</I
1705></TT
1706>&nbsp;:</TD
1707><TD
1708WIDTH="80%"
1709ALIGN="LEFT"
1710VALIGN="TOP"
1711>&nbsp;</TD
1712></TR
1713><TR
1714><TD
1715WIDTH="20%"
1716ALIGN="RIGHT"
1717VALIGN="TOP"
1718><SPAN
1719CLASS="emphasis"
1720><I
1721CLASS="EMPHASIS"
1722>Returns</I
1723></SPAN
1724> :</TD
1725><TD
1726WIDTH="80%"
1727ALIGN="LEFT"
1728VALIGN="TOP"
1729>the target state or NULL in case of error</TD
1730></TR
1731></TBODY
1732></TABLE
1733><P
1734></P
1735></DIV
1736></DIV
1737><HR><DIV
1738CLASS="REFSECT2"
1739><A
1740NAME="AEN28325"
1741></A
1742><H3
1743><A
1744NAME="XMLAUTOMATANEWEPSILON"
1745></A
1746>xmlAutomataNewEpsilon ()</H3
1747><TABLE
1748BORDER="0"
1749BGCOLOR="#D6E8FF"
1750WIDTH="100%"
1751CELLPADDING="6"
1752><TR
1753><TD
1754><PRE
1755CLASS="PROGRAMLISTING"
1756><A
1757HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
1758>xmlAutomataStatePtr</A
1759> xmlAutomataNewEpsilon (<A
1760HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
1761>xmlAutomataPtr</A
1762> am,
1763 <A
1764HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
1765>xmlAutomataStatePtr</A
1766> from,
1767 <A
1768HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
1769>xmlAutomataStatePtr</A
1770> to);</PRE
1771></TD
1772></TR
1773></TABLE
1774><P
1775></P
1776><DIV
1777CLASS="INFORMALTABLE"
1778><A
1779NAME="AEN28334"><P
1780></P
1781><TABLE
1782BORDER="0"
1783WIDTH="100%"
1784BGCOLOR="#FFD0D0"
1785CELLSPACING="0"
1786CELLPADDING="4"
1787CLASS="CALSTABLE"
1788><TBODY
1789><TR
1790><TD
1791WIDTH="20%"
1792ALIGN="RIGHT"
1793VALIGN="TOP"
1794><TT
1795CLASS="PARAMETER"
1796><I
1797>am</I
1798></TT
1799>&nbsp;:</TD
1800><TD
1801WIDTH="80%"
1802ALIGN="LEFT"
1803VALIGN="TOP"
1804>&nbsp;</TD
1805></TR
1806><TR
1807><TD
1808WIDTH="20%"
1809ALIGN="RIGHT"
1810VALIGN="TOP"
1811><TT
1812CLASS="PARAMETER"
1813><I
1814>from</I
1815></TT
1816>&nbsp;:</TD
1817><TD
1818WIDTH="80%"
1819ALIGN="LEFT"
1820VALIGN="TOP"
1821>&nbsp;</TD
1822></TR
1823><TR
1824><TD
1825WIDTH="20%"
1826ALIGN="RIGHT"
1827VALIGN="TOP"
1828><TT
1829CLASS="PARAMETER"
1830><I
1831>to</I
1832></TT
1833>&nbsp;:</TD
1834><TD
1835WIDTH="80%"
1836ALIGN="LEFT"
1837VALIGN="TOP"
1838>&nbsp;</TD
1839></TR
1840><TR
1841><TD
1842WIDTH="20%"
1843ALIGN="RIGHT"
1844VALIGN="TOP"
1845><SPAN
1846CLASS="emphasis"
1847><I
1848CLASS="EMPHASIS"
1849>Returns</I
1850></SPAN
1851> :</TD
1852><TD
1853WIDTH="80%"
1854ALIGN="LEFT"
1855VALIGN="TOP"
1856>&nbsp;</TD
1857></TR
1858></TBODY
1859></TABLE
1860><P
1861></P
1862></DIV
1863></DIV
1864><HR><DIV
1865CLASS="REFSECT2"
1866><A
1867NAME="AEN28355"
1868></A
1869><H3
1870><A
1871NAME="XMLAUTOMATANEWCOUNTEDTRANS"
1872></A
1873>xmlAutomataNewCountedTrans ()</H3
1874><TABLE
1875BORDER="0"
1876BGCOLOR="#D6E8FF"
1877WIDTH="100%"
1878CELLPADDING="6"
1879><TR
1880><TD
1881><PRE
1882CLASS="PROGRAMLISTING"
1883><A
1884HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
1885>xmlAutomataStatePtr</A
1886> xmlAutomataNewCountedTrans
1887 (<A
1888HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
1889>xmlAutomataPtr</A
1890> am,
1891 <A
1892HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
1893>xmlAutomataStatePtr</A
1894> from,
1895 <A
1896HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
1897>xmlAutomataStatePtr</A
1898> to,
1899 int counter);</PRE
1900></TD
1901></TR
1902></TABLE
1903><P
1904>If <TT
1905CLASS="PARAMETER"
1906><I
1907>to</I
1908></TT
1909> is NULL, this create first a new target state in the automata
1910and then adds an epsilon transition from the <TT
1911CLASS="PARAMETER"
1912><I
1913>from</I
1914></TT
1915> state to the target state
1916which will increment the counter provided</P
1917><P
1918></P
1919><DIV
1920CLASS="INFORMALTABLE"
1921><A
1922NAME="AEN28367"><P
1923></P
1924><TABLE
1925BORDER="0"
1926WIDTH="100%"
1927BGCOLOR="#FFD0D0"
1928CELLSPACING="0"
1929CELLPADDING="4"
1930CLASS="CALSTABLE"
1931><TBODY
1932><TR
1933><TD
1934WIDTH="20%"
1935ALIGN="RIGHT"
1936VALIGN="TOP"
1937><TT
1938CLASS="PARAMETER"
1939><I
1940>am</I
1941></TT
1942>&nbsp;:</TD
1943><TD
1944WIDTH="80%"
1945ALIGN="LEFT"
1946VALIGN="TOP"
1947> an automata</TD
1948></TR
1949><TR
1950><TD
1951WIDTH="20%"
1952ALIGN="RIGHT"
1953VALIGN="TOP"
1954><TT
1955CLASS="PARAMETER"
1956><I
1957>from</I
1958></TT
1959>&nbsp;:</TD
1960><TD
1961WIDTH="80%"
1962ALIGN="LEFT"
1963VALIGN="TOP"
1964> the starting point of the transition</TD
1965></TR
1966><TR
1967><TD
1968WIDTH="20%"
1969ALIGN="RIGHT"
1970VALIGN="TOP"
1971><TT
1972CLASS="PARAMETER"
1973><I
1974>to</I
1975></TT
1976>&nbsp;:</TD
1977><TD
1978WIDTH="80%"
1979ALIGN="LEFT"
1980VALIGN="TOP"
1981> the target point of the transition or NULL</TD
1982></TR
1983><TR
1984><TD
1985WIDTH="20%"
1986ALIGN="RIGHT"
1987VALIGN="TOP"
1988><TT
1989CLASS="PARAMETER"
1990><I
1991>counter</I
1992></TT
1993>&nbsp;:</TD
1994><TD
1995WIDTH="80%"
1996ALIGN="LEFT"
1997VALIGN="TOP"
1998> the counter associated to that transition</TD
1999></TR
2000><TR
2001><TD
2002WIDTH="20%"
2003ALIGN="RIGHT"
2004VALIGN="TOP"
2005><SPAN
2006CLASS="emphasis"
2007><I
2008CLASS="EMPHASIS"
2009>Returns</I
2010></SPAN
2011> :</TD
2012><TD
2013WIDTH="80%"
2014ALIGN="LEFT"
2015VALIGN="TOP"
2016>the target state or NULL in case of error</TD
2017></TR
2018></TBODY
2019></TABLE
2020><P
2021></P
2022></DIV
2023></DIV
2024><HR><DIV
2025CLASS="REFSECT2"
2026><A
2027NAME="AEN28392"
2028></A
2029><H3
2030><A
2031NAME="XMLAUTOMATANEWCOUNTERTRANS"
2032></A
2033>xmlAutomataNewCounterTrans ()</H3
2034><TABLE
2035BORDER="0"
2036BGCOLOR="#D6E8FF"
2037WIDTH="100%"
2038CELLPADDING="6"
2039><TR
2040><TD
2041><PRE
2042CLASS="PROGRAMLISTING"
2043><A
2044HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
2045>xmlAutomataStatePtr</A
2046> xmlAutomataNewCounterTrans
2047 (<A
2048HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
2049>xmlAutomataPtr</A
2050> am,
2051 <A
2052HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
2053>xmlAutomataStatePtr</A
2054> from,
2055 <A
2056HREF="libxml-xmlautomata.html#XMLAUTOMATASTATEPTR"
2057>xmlAutomataStatePtr</A
2058> to,
2059 int counter);</PRE
2060></TD
2061></TR
2062></TABLE
2063><P
2064>If <TT
2065CLASS="PARAMETER"
2066><I
2067>to</I
2068></TT
2069> is NULL, this create first a new target state in the automata
2070and then adds an epsilon transition from the <TT
2071CLASS="PARAMETER"
2072><I
2073>from</I
2074></TT
2075> state to the target state
2076which will be allowed only if the counter is within the right range.</P
2077><P
2078></P
2079><DIV
2080CLASS="INFORMALTABLE"
2081><A
2082NAME="AEN28404"><P
2083></P
2084><TABLE
2085BORDER="0"
2086WIDTH="100%"
2087BGCOLOR="#FFD0D0"
2088CELLSPACING="0"
2089CELLPADDING="4"
2090CLASS="CALSTABLE"
2091><TBODY
2092><TR
2093><TD
2094WIDTH="20%"
2095ALIGN="RIGHT"
2096VALIGN="TOP"
2097><TT
2098CLASS="PARAMETER"
2099><I
2100>am</I
2101></TT
2102>&nbsp;:</TD
2103><TD
2104WIDTH="80%"
2105ALIGN="LEFT"
2106VALIGN="TOP"
2107> an automata</TD
2108></TR
2109><TR
2110><TD
2111WIDTH="20%"
2112ALIGN="RIGHT"
2113VALIGN="TOP"
2114><TT
2115CLASS="PARAMETER"
2116><I
2117>from</I
2118></TT
2119>&nbsp;:</TD
2120><TD
2121WIDTH="80%"
2122ALIGN="LEFT"
2123VALIGN="TOP"
2124> the starting point of the transition</TD
2125></TR
2126><TR
2127><TD
2128WIDTH="20%"
2129ALIGN="RIGHT"
2130VALIGN="TOP"
2131><TT
2132CLASS="PARAMETER"
2133><I
2134>to</I
2135></TT
2136>&nbsp;:</TD
2137><TD
2138WIDTH="80%"
2139ALIGN="LEFT"
2140VALIGN="TOP"
2141> the target point of the transition or NULL</TD
2142></TR
2143><TR
2144><TD
2145WIDTH="20%"
2146ALIGN="RIGHT"
2147VALIGN="TOP"
2148><TT
2149CLASS="PARAMETER"
2150><I
2151>counter</I
2152></TT
2153>&nbsp;:</TD
2154><TD
2155WIDTH="80%"
2156ALIGN="LEFT"
2157VALIGN="TOP"
2158> the counter associated to that transition</TD
2159></TR
2160><TR
2161><TD
2162WIDTH="20%"
2163ALIGN="RIGHT"
2164VALIGN="TOP"
2165><SPAN
2166CLASS="emphasis"
2167><I
2168CLASS="EMPHASIS"
2169>Returns</I
2170></SPAN
2171> :</TD
2172><TD
2173WIDTH="80%"
2174ALIGN="LEFT"
2175VALIGN="TOP"
2176>the target state or NULL in case of error</TD
2177></TR
2178></TBODY
2179></TABLE
2180><P
2181></P
2182></DIV
2183></DIV
2184><HR><DIV
2185CLASS="REFSECT2"
2186><A
2187NAME="AEN28429"
2188></A
2189><H3
2190><A
2191NAME="XMLAUTOMATANEWCOUNTER"
2192></A
2193>xmlAutomataNewCounter ()</H3
2194><TABLE
2195BORDER="0"
2196BGCOLOR="#D6E8FF"
2197WIDTH="100%"
2198CELLPADDING="6"
2199><TR
2200><TD
2201><PRE
2202CLASS="PROGRAMLISTING"
2203>int xmlAutomataNewCounter (<A
2204HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
2205>xmlAutomataPtr</A
2206> am,
2207 int min,
2208 int max);</PRE
2209></TD
2210></TR
2211></TABLE
2212><P
2213>Create a new counter</P
2214><P
2215></P
2216><DIV
2217CLASS="INFORMALTABLE"
2218><A
2219NAME="AEN28436"><P
2220></P
2221><TABLE
2222BORDER="0"
2223WIDTH="100%"
2224BGCOLOR="#FFD0D0"
2225CELLSPACING="0"
2226CELLPADDING="4"
2227CLASS="CALSTABLE"
2228><TBODY
2229><TR
2230><TD
2231WIDTH="20%"
2232ALIGN="RIGHT"
2233VALIGN="TOP"
2234><TT
2235CLASS="PARAMETER"
2236><I
2237>am</I
2238></TT
2239>&nbsp;:</TD
2240><TD
2241WIDTH="80%"
2242ALIGN="LEFT"
2243VALIGN="TOP"
2244> an automata</TD
2245></TR
2246><TR
2247><TD
2248WIDTH="20%"
2249ALIGN="RIGHT"
2250VALIGN="TOP"
2251><TT
2252CLASS="PARAMETER"
2253><I
2254>min</I
2255></TT
2256>&nbsp;:</TD
2257><TD
2258WIDTH="80%"
2259ALIGN="LEFT"
2260VALIGN="TOP"
2261> the minimal value on the counter</TD
2262></TR
2263><TR
2264><TD
2265WIDTH="20%"
2266ALIGN="RIGHT"
2267VALIGN="TOP"
2268><TT
2269CLASS="PARAMETER"
2270><I
2271>max</I
2272></TT
2273>&nbsp;:</TD
2274><TD
2275WIDTH="80%"
2276ALIGN="LEFT"
2277VALIGN="TOP"
2278> the maximal value on the counter</TD
2279></TR
2280><TR
2281><TD
2282WIDTH="20%"
2283ALIGN="RIGHT"
2284VALIGN="TOP"
2285><SPAN
2286CLASS="emphasis"
2287><I
2288CLASS="EMPHASIS"
2289>Returns</I
2290></SPAN
2291> :</TD
2292><TD
2293WIDTH="80%"
2294ALIGN="LEFT"
2295VALIGN="TOP"
2296>the counter number or -1 in case of error</TD
2297></TR
2298></TBODY
2299></TABLE
2300><P
2301></P
2302></DIV
2303></DIV
2304><HR><DIV
2305CLASS="REFSECT2"
2306><A
2307NAME="AEN28457"
2308></A
2309><H3
2310><A
2311NAME="XMLAUTOMATACOMPILE"
2312></A
2313>xmlAutomataCompile ()</H3
2314><TABLE
2315BORDER="0"
2316BGCOLOR="#D6E8FF"
2317WIDTH="100%"
2318CELLPADDING="6"
2319><TR
2320><TD
2321><PRE
2322CLASS="PROGRAMLISTING"
2323><A
2324HREF="libxml-xmlregexp.html#XMLREGEXPPTR"
2325>xmlRegexpPtr</A
2326> xmlAutomataCompile (<A
2327HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
2328>xmlAutomataPtr</A
2329> am);</PRE
2330></TD
2331></TR
2332></TABLE
2333><P
2334>Compile the automata into a Reg Exp ready for being executed.
2335The automata should be free after this point.</P
2336><P
2337></P
2338><DIV
2339CLASS="INFORMALTABLE"
2340><A
2341NAME="AEN28465"><P
2342></P
2343><TABLE
2344BORDER="0"
2345WIDTH="100%"
2346BGCOLOR="#FFD0D0"
2347CELLSPACING="0"
2348CELLPADDING="4"
2349CLASS="CALSTABLE"
2350><TBODY
2351><TR
2352><TD
2353WIDTH="20%"
2354ALIGN="RIGHT"
2355VALIGN="TOP"
2356><TT
2357CLASS="PARAMETER"
2358><I
2359>am</I
2360></TT
2361>&nbsp;:</TD
2362><TD
2363WIDTH="80%"
2364ALIGN="LEFT"
2365VALIGN="TOP"
2366> an automata</TD
2367></TR
2368><TR
2369><TD
2370WIDTH="20%"
2371ALIGN="RIGHT"
2372VALIGN="TOP"
2373><SPAN
2374CLASS="emphasis"
2375><I
2376CLASS="EMPHASIS"
2377>Returns</I
2378></SPAN
2379> :</TD
2380><TD
2381WIDTH="80%"
2382ALIGN="LEFT"
2383VALIGN="TOP"
2384>the compiled regexp or NULL in case of error</TD
2385></TR
2386></TBODY
2387></TABLE
2388><P
2389></P
2390></DIV
2391></DIV
2392><HR><DIV
2393CLASS="REFSECT2"
2394><A
2395NAME="AEN28478"
2396></A
2397><H3
2398><A
2399NAME="XMLAUTOMATAISDETERMINIST"
2400></A
2401>xmlAutomataIsDeterminist ()</H3
2402><TABLE
2403BORDER="0"
2404BGCOLOR="#D6E8FF"
2405WIDTH="100%"
2406CELLPADDING="6"
2407><TR
2408><TD
2409><PRE
2410CLASS="PROGRAMLISTING"
2411>int xmlAutomataIsDeterminist (<A
2412HREF="libxml-xmlautomata.html#XMLAUTOMATAPTR"
2413>xmlAutomataPtr</A
2414> am);</PRE
2415></TD
2416></TR
2417></TABLE
2418><P
2419>Checks if an automata is determinist.</P
2420><P
2421></P
2422><DIV
2423CLASS="INFORMALTABLE"
2424><A
2425NAME="AEN28485"><P
2426></P
2427><TABLE
2428BORDER="0"
2429WIDTH="100%"
2430BGCOLOR="#FFD0D0"
2431CELLSPACING="0"
2432CELLPADDING="4"
2433CLASS="CALSTABLE"
2434><TBODY
2435><TR
2436><TD
2437WIDTH="20%"
2438ALIGN="RIGHT"
2439VALIGN="TOP"
2440><TT
2441CLASS="PARAMETER"
2442><I
2443>am</I
2444></TT
2445>&nbsp;:</TD
2446><TD
2447WIDTH="80%"
2448ALIGN="LEFT"
2449VALIGN="TOP"
2450> an automata</TD
2451></TR
2452><TR
2453><TD
2454WIDTH="20%"
2455ALIGN="RIGHT"
2456VALIGN="TOP"
2457><SPAN
2458CLASS="emphasis"
2459><I
2460CLASS="EMPHASIS"
2461>Returns</I
2462></SPAN
2463> :</TD
2464><TD
2465WIDTH="80%"
2466ALIGN="LEFT"
2467VALIGN="TOP"
2468>1 if true, 0 if not, and -1 in case of error</TD
2469></TR
2470></TBODY
2471></TABLE
2472><P
2473></P
2474></DIV
2475></DIV
2476></DIV
2477><DIV
2478CLASS="NAVFOOTER"
2479><BR
2480CLEAR="all"><BR><TABLE
2481WIDTH="100%"
2482BORDER="0"
2483BGCOLOR="#000000"
2484CELLPADDING="1"
2485CELLSPACING="0"
2486><TR
2487><TD
2488WIDTH="25%"
2489BGCOLOR="#C00000"
2490ALIGN="left"
2491><A
2492HREF="libxml-xmlregexp.html"
2493><FONT
2494COLOR="#FFFFFF"
2495SIZE="3"
2496><B
2497>&#60;&#60;&#60; Previous Page</B
2498></FONT
2499></A
2500></TD
2501><TD
2502WIDTH="25%"
2503BGCOLOR="#0000C0"
2504ALIGN="center"
2505><FONT
2506COLOR="#FFFFFF"
2507SIZE="3"
2508><B
2509><A
2510HREF="book1.html"
2511><FONT
2512COLOR="#FFFFFF"
2513SIZE="3"
2514><B
2515>Home</B
2516></FONT
2517></A
2518></B
2519></FONT
2520></TD
2521><TD
2522WIDTH="25%"
2523BGCOLOR="#00C000"
2524ALIGN="center"
2525><FONT
2526COLOR="#FFFFFF"
2527SIZE="3"
2528><B
2529><A
2530HREF="libxml-lib.html"
2531><FONT
2532COLOR="#FFFFFF"
2533SIZE="3"
2534><B
2535>Up</B
2536></FONT
2537></A
2538></B
2539></FONT
2540></TD
2541><TD
2542WIDTH="25%"
2543BGCOLOR="#C00000"
2544ALIGN="right"
2545><A
2546HREF="libxml-xmlunicode.html"
2547><FONT
2548COLOR="#FFFFFF"
2549SIZE="3"
2550><B
2551>Next Page &#62;&#62;&#62;</B
2552></FONT
2553></A
2554></TD
2555></TR
2556><TR
2557><TD
2558COLSPAN="2"
2559ALIGN="left"
2560><FONT
2561COLOR="#FFFFFF"
2562SIZE="3"
2563><B
2564>xmlregexp</B
2565></FONT
2566></TD
2567><TD
2568COLSPAN="2"
2569ALIGN="right"
2570><FONT
2571COLOR="#FFFFFF"
2572SIZE="3"
2573><B
2574>xmlunicode</B
2575></FONT
2576></TD
2577></TR
2578></TABLE
2579></DIV
2580></BODY
2581></HTML
2582>