mirror of
https://gitlab.gnome.org/GNOME/libxml2.git
synced 2025-10-21 14:53:44 +03:00
Unfortunately, Doxygen's TYPDEF_HIDES_STRUCT option is too broken. Document struct typedefs to make autolinks work.
165 lines
3.8 KiB
C
165 lines
3.8 KiB
C
/**
|
|
* @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__ */
|