Annotation of embedaddon/libxml2/include/libxml/xmlautomata.h, revision 1.1.1.1

1.1       misho       1: /*
                      2:  * Summary: API to build regexp automata
                      3:  * Description: the API to build regexp automata
                      4:  *
                      5:  * Copy: See Copyright for the status of this software.
                      6:  *
                      7:  * Author: Daniel Veillard
                      8:  */
                      9: 
                     10: #ifndef __XML_AUTOMATA_H__
                     11: #define __XML_AUTOMATA_H__
                     12: 
                     13: #include <libxml/xmlversion.h>
                     14: #include <libxml/tree.h>
                     15: 
                     16: #ifdef LIBXML_REGEXP_ENABLED
                     17: #ifdef LIBXML_AUTOMATA_ENABLED
                     18: #include <libxml/xmlregexp.h>
                     19: 
                     20: #ifdef __cplusplus
                     21: extern "C" {
                     22: #endif
                     23: 
                     24: /**
                     25:  * xmlAutomataPtr:
                     26:  *
                     27:  * A libxml automata description, It can be compiled into a regexp
                     28:  */
                     29: typedef struct _xmlAutomata xmlAutomata;
                     30: typedef xmlAutomata *xmlAutomataPtr;
                     31: 
                     32: /**
                     33:  * xmlAutomataStatePtr:
                     34:  *
                     35:  * A state int the automata description,
                     36:  */
                     37: typedef struct _xmlAutomataState xmlAutomataState;
                     38: typedef xmlAutomataState *xmlAutomataStatePtr;
                     39: 
                     40: /*
                     41:  * Building API
                     42:  */
                     43: XMLPUBFUN xmlAutomataPtr XMLCALL               
                     44:                    xmlNewAutomata              (void);
                     45: XMLPUBFUN void XMLCALL                 
                     46:                    xmlFreeAutomata             (xmlAutomataPtr am);
                     47: 
                     48: XMLPUBFUN xmlAutomataStatePtr XMLCALL  
                     49:                    xmlAutomataGetInitState     (xmlAutomataPtr am);
                     50: XMLPUBFUN int XMLCALL                  
                     51:                    xmlAutomataSetFinalState    (xmlAutomataPtr am,
                     52:                                                 xmlAutomataStatePtr state);
                     53: XMLPUBFUN xmlAutomataStatePtr XMLCALL  
                     54:                    xmlAutomataNewState         (xmlAutomataPtr am);
                     55: XMLPUBFUN xmlAutomataStatePtr XMLCALL  
                     56:                    xmlAutomataNewTransition    (xmlAutomataPtr am,
                     57:                                                 xmlAutomataStatePtr from,
                     58:                                                 xmlAutomataStatePtr to,
                     59:                                                 const xmlChar *token,
                     60:                                                 void *data);
                     61: XMLPUBFUN xmlAutomataStatePtr XMLCALL  
                     62:                    xmlAutomataNewTransition2   (xmlAutomataPtr am,
                     63:                                                 xmlAutomataStatePtr from,
                     64:                                                 xmlAutomataStatePtr to,
                     65:                                                 const xmlChar *token,
                     66:                                                 const xmlChar *token2,
                     67:                                                 void *data);
                     68: XMLPUBFUN xmlAutomataStatePtr XMLCALL
                     69:                     xmlAutomataNewNegTrans     (xmlAutomataPtr am,
                     70:                                                 xmlAutomataStatePtr from,
                     71:                                                 xmlAutomataStatePtr to,
                     72:                                                 const xmlChar *token,
                     73:                                                 const xmlChar *token2,
                     74:                                                 void *data);
                     75: 
                     76: XMLPUBFUN xmlAutomataStatePtr XMLCALL  
                     77:                    xmlAutomataNewCountTrans    (xmlAutomataPtr am,
                     78:                                                 xmlAutomataStatePtr from,
                     79:                                                 xmlAutomataStatePtr to,
                     80:                                                 const xmlChar *token,
                     81:                                                 int min,
                     82:                                                 int max,
                     83:                                                 void *data);
                     84: XMLPUBFUN xmlAutomataStatePtr XMLCALL  
                     85:                    xmlAutomataNewCountTrans2   (xmlAutomataPtr am,
                     86:                                                 xmlAutomataStatePtr from,
                     87:                                                 xmlAutomataStatePtr to,
                     88:                                                 const xmlChar *token,
                     89:                                                 const xmlChar *token2,
                     90:                                                 int min,
                     91:                                                 int max,
                     92:                                                 void *data);
                     93: XMLPUBFUN xmlAutomataStatePtr XMLCALL  
                     94:                    xmlAutomataNewOnceTrans     (xmlAutomataPtr am,
                     95:                                                 xmlAutomataStatePtr from,
                     96:                                                 xmlAutomataStatePtr to,
                     97:                                                 const xmlChar *token,
                     98:                                                 int min,
                     99:                                                 int max,
                    100:                                                 void *data);
                    101: XMLPUBFUN xmlAutomataStatePtr XMLCALL
                    102:                    xmlAutomataNewOnceTrans2    (xmlAutomataPtr am, 
                    103:                                                 xmlAutomataStatePtr from,
                    104:                                                 xmlAutomataStatePtr to, 
                    105:                                                 const xmlChar *token,
                    106:                                                 const xmlChar *token2,
                    107:                                                 int min, 
                    108:                                                 int max, 
                    109:                                                 void *data);
                    110: XMLPUBFUN xmlAutomataStatePtr XMLCALL  
                    111:                    xmlAutomataNewAllTrans      (xmlAutomataPtr am,
                    112:                                                 xmlAutomataStatePtr from,
                    113:                                                 xmlAutomataStatePtr to,
                    114:                                                 int lax);
                    115: XMLPUBFUN xmlAutomataStatePtr XMLCALL  
                    116:                    xmlAutomataNewEpsilon       (xmlAutomataPtr am,
                    117:                                                 xmlAutomataStatePtr from,
                    118:                                                 xmlAutomataStatePtr to);
                    119: XMLPUBFUN xmlAutomataStatePtr XMLCALL  
                    120:                    xmlAutomataNewCountedTrans  (xmlAutomataPtr am,
                    121:                                                 xmlAutomataStatePtr from,
                    122:                                                 xmlAutomataStatePtr to,
                    123:                                                 int counter);
                    124: XMLPUBFUN xmlAutomataStatePtr XMLCALL  
                    125:                    xmlAutomataNewCounterTrans  (xmlAutomataPtr am,
                    126:                                                 xmlAutomataStatePtr from,
                    127:                                                 xmlAutomataStatePtr to,
                    128:                                                 int counter);
                    129: XMLPUBFUN int XMLCALL                  
                    130:                    xmlAutomataNewCounter       (xmlAutomataPtr am,
                    131:                                                 int min,
                    132:                                                 int max);
                    133: 
                    134: XMLPUBFUN xmlRegexpPtr XMLCALL         
                    135:                    xmlAutomataCompile          (xmlAutomataPtr am);
                    136: XMLPUBFUN int XMLCALL                  
                    137:                    xmlAutomataIsDeterminist    (xmlAutomataPtr am);
                    138: 
                    139: #ifdef __cplusplus
                    140: }
                    141: #endif 
                    142: 
                    143: #endif /* LIBXML_AUTOMATA_ENABLED */
                    144: #endif /* LIBXML_REGEXP_ENABLED */
                    145: 
                    146: #endif /* __XML_AUTOMATA_H__ */

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>