Branch
Hash :
c7a9ef1d
Author :
Date :
2025-07-04T16:20:28
doc: Document struct typedefs Unfortunately, Doxygen's TYPDEF_HIDES_STRUCT option is too broken. Document struct typedefs to make autolinks work.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164
/**
* @file
*
* @brief API to build regexp automata
*
* These are internal functions and shouldn't be used.
*
* @copyright See Copyright for the status of this software.
*
* @author Daniel Veillard
*/
#ifndef __XML_AUTOMATA_H__
#define __XML_AUTOMATA_H__
#include <libxml/xmlversion.h>
#ifdef LIBXML_REGEXP_ENABLED
#include <libxml/xmlstring.h>
#ifdef __cplusplus
extern "C" {
#endif
/**
* A libxml automata description
*
* It can be compiled into a regexp
*/
typedef struct _xmlAutomata xmlAutomata;
typedef xmlAutomata *xmlAutomataPtr;
/**
* A state in the automata description
*/
typedef struct _xmlAutomataState xmlAutomataState;
typedef xmlAutomataState *xmlAutomataStatePtr;
/*
* Building API
*/
XML_DEPRECATED
XMLPUBFUN xmlAutomata *
xmlNewAutomata (void);
XML_DEPRECATED
XMLPUBFUN void
xmlFreeAutomata (xmlAutomata *am);
XML_DEPRECATED
XMLPUBFUN xmlAutomataState *
xmlAutomataGetInitState (xmlAutomata *am);
XML_DEPRECATED
XMLPUBFUN int
xmlAutomataSetFinalState (xmlAutomata *am,
xmlAutomataState *state);
XML_DEPRECATED
XMLPUBFUN xmlAutomataState *
xmlAutomataNewState (xmlAutomata *am);
XML_DEPRECATED
XMLPUBFUN xmlAutomataState *
xmlAutomataNewTransition (xmlAutomata *am,
xmlAutomataState *from,
xmlAutomataState *to,
const xmlChar *token,
void *data);
XML_DEPRECATED
XMLPUBFUN xmlAutomataState *
xmlAutomataNewTransition2 (xmlAutomata *am,
xmlAutomataState *from,
xmlAutomataState *to,
const xmlChar *token,
const xmlChar *token2,
void *data);
XML_DEPRECATED
XMLPUBFUN xmlAutomataState *
xmlAutomataNewNegTrans (xmlAutomata *am,
xmlAutomataState *from,
xmlAutomataState *to,
const xmlChar *token,
const xmlChar *token2,
void *data);
XML_DEPRECATED
XMLPUBFUN xmlAutomataState *
xmlAutomataNewCountTrans (xmlAutomata *am,
xmlAutomataState *from,
xmlAutomataState *to,
const xmlChar *token,
int min,
int max,
void *data);
XML_DEPRECATED
XMLPUBFUN xmlAutomataState *
xmlAutomataNewCountTrans2 (xmlAutomata *am,
xmlAutomataState *from,
xmlAutomataState *to,
const xmlChar *token,
const xmlChar *token2,
int min,
int max,
void *data);
XML_DEPRECATED
XMLPUBFUN xmlAutomataState *
xmlAutomataNewOnceTrans (xmlAutomata *am,
xmlAutomataState *from,
xmlAutomataState *to,
const xmlChar *token,
int min,
int max,
void *data);
XML_DEPRECATED
XMLPUBFUN xmlAutomataState *
xmlAutomataNewOnceTrans2 (xmlAutomata *am,
xmlAutomataState *from,
xmlAutomataState *to,
const xmlChar *token,
const xmlChar *token2,
int min,
int max,
void *data);
XML_DEPRECATED
XMLPUBFUN xmlAutomataState *
xmlAutomataNewAllTrans (xmlAutomata *am,
xmlAutomataState *from,
xmlAutomataState *to,
int lax);
XML_DEPRECATED
XMLPUBFUN xmlAutomataState *
xmlAutomataNewEpsilon (xmlAutomata *am,
xmlAutomataState *from,
xmlAutomataState *to);
XML_DEPRECATED
XMLPUBFUN xmlAutomataState *
xmlAutomataNewCountedTrans (xmlAutomata *am,
xmlAutomataState *from,
xmlAutomataState *to,
int counter);
XML_DEPRECATED
XMLPUBFUN xmlAutomataState *
xmlAutomataNewCounterTrans (xmlAutomata *am,
xmlAutomataState *from,
xmlAutomataState *to,
int counter);
XML_DEPRECATED
XMLPUBFUN int
xmlAutomataNewCounter (xmlAutomata *am,
int min,
int max);
XML_DEPRECATED
XMLPUBFUN struct _xmlRegexp *
xmlAutomataCompile (xmlAutomata *am);
XML_DEPRECATED
XMLPUBFUN int
xmlAutomataIsDeterminist (xmlAutomata *am);
#ifdef __cplusplus
}
#endif
#endif /* LIBXML_REGEXP_ENABLED */
#endif /* __XML_AUTOMATA_H__ */