Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

xmlautomata.h

Go to the documentation of this file.
00001 /*
00002  * automata.h : description of the API to build regexp automats
00003  *
00004  * See Copyright for the status of this software.
00005  *
00006  * Daniel Veillard <veillard@redhat.com>
00007  */
00008 
00009 #ifndef __XML_AUTOMATA_H__
00010 #define __XML_AUTOMATA_H__
00011 
00012 #include <libxml/xmlversion.h>
00013 #include <libxml/tree.h>
00014 
00015 #ifdef LIBXML_AUTOMATA_ENABLED
00016 #include <libxml/xmlregexp.h>
00017 
00018 #ifdef __cplusplus
00019 extern "C" {
00020 #endif
00021 
00027 typedef struct _xmlAutomata xmlAutomata;
00028 typedef xmlAutomata *xmlAutomataPtr;
00029 
00035 typedef struct _xmlAutomataState xmlAutomataState;
00036 typedef xmlAutomataState *xmlAutomataStatePtr;
00037 
00038 /*
00039  * Building API
00040  */
00041 XMLPUBFUN xmlAutomataPtr XMLCALL                
00042                     xmlNewAutomata              (void);
00043 XMLPUBFUN void XMLCALL                  
00044                     xmlFreeAutomata             (xmlAutomataPtr am);
00045 
00046 XMLPUBFUN xmlAutomataStatePtr XMLCALL   
00047                     xmlAutomataGetInitState     (xmlAutomataPtr am);
00048 XMLPUBFUN int XMLCALL                   
00049                     xmlAutomataSetFinalState    (xmlAutomataPtr am,
00050                                                  xmlAutomataStatePtr state);
00051 XMLPUBFUN xmlAutomataStatePtr XMLCALL   
00052                     xmlAutomataNewState         (xmlAutomataPtr am);
00053 XMLPUBFUN xmlAutomataStatePtr XMLCALL   
00054                     xmlAutomataNewTransition    (xmlAutomataPtr am,
00055                                                  xmlAutomataStatePtr from,
00056                                                  xmlAutomataStatePtr to,
00057                                                  const xmlChar *token,
00058                                                  void *data);
00059 XMLPUBFUN xmlAutomataStatePtr XMLCALL   
00060                     xmlAutomataNewTransition2   (xmlAutomataPtr am,
00061                                                  xmlAutomataStatePtr from,
00062                                                  xmlAutomataStatePtr to,
00063                                                  const xmlChar *token,
00064                                                  const xmlChar *token2,
00065                                                  void *data);
00066 XMLPUBFUN xmlAutomataStatePtr XMLCALL   
00067                     xmlAutomataNewCountTrans    (xmlAutomataPtr am,
00068                                                  xmlAutomataStatePtr from,
00069                                                  xmlAutomataStatePtr to,
00070                                                  const xmlChar *token,
00071                                                  int min,
00072                                                  int max,
00073                                                  void *data);
00074 XMLPUBFUN xmlAutomataStatePtr XMLCALL   
00075                     xmlAutomataNewOnceTrans     (xmlAutomataPtr am,
00076                                                  xmlAutomataStatePtr from,
00077                                                  xmlAutomataStatePtr to,
00078                                                  const xmlChar *token,
00079                                                  int min,
00080                                                  int max,
00081                                                  void *data);
00082 XMLPUBFUN xmlAutomataStatePtr XMLCALL   
00083                     xmlAutomataNewAllTrans      (xmlAutomataPtr am,
00084                                                  xmlAutomataStatePtr from,
00085                                                  xmlAutomataStatePtr to,
00086                                                  int lax);
00087 XMLPUBFUN xmlAutomataStatePtr XMLCALL   
00088                     xmlAutomataNewEpsilon       (xmlAutomataPtr am,
00089                                                  xmlAutomataStatePtr from,
00090                                                  xmlAutomataStatePtr to);
00091 XMLPUBFUN xmlAutomataStatePtr XMLCALL   
00092                     xmlAutomataNewCountedTrans  (xmlAutomataPtr am,
00093                                                  xmlAutomataStatePtr from,
00094                                                  xmlAutomataStatePtr to,
00095                                                  int counter);
00096 XMLPUBFUN xmlAutomataStatePtr XMLCALL   
00097                     xmlAutomataNewCounterTrans  (xmlAutomataPtr am,
00098                                                  xmlAutomataStatePtr from,
00099                                                  xmlAutomataStatePtr to,
00100                                                  int counter);
00101 XMLPUBFUN int XMLCALL                   
00102                     xmlAutomataNewCounter       (xmlAutomataPtr am,
00103                                                  int min,
00104                                                  int max);
00105 
00106 XMLPUBFUN xmlRegexpPtr XMLCALL          
00107                     xmlAutomataCompile          (xmlAutomataPtr am);
00108 XMLPUBFUN int XMLCALL                   
00109                     xmlAutomataIsDeterminist    (xmlAutomataPtr am);
00110 
00111 #ifdef __cplusplus
00112 }
00113 #endif 
00114 
00115 #endif /* LIBXML_AUTOMATA_ENABLED */
00116 #endif /* __XML_AUTOMATA_H__ */
00117 

Generated on Wed Mar 16 00:10:27 2005 for Dibbler - a portable DHCPv6 by  doxygen 1.3.9.1