1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2024-10-26 12:25:09 +03:00

pushing the formal expression handling code to have it in CVs from now.

* xmlregexp.c include/libxml/xmlregexp.h: pushing the formal expression
  handling code to have it in CVs from now. Not plugged, and misses
  APIs it's not compiled in yet.
Daniel
This commit is contained in:
Daniel Veillard 2005-08-22 00:20:58 +00:00
parent 45b97e72d1
commit 81a8ec6b13
3 changed files with 1457 additions and 0 deletions

View File

@ -1,3 +1,9 @@
Mon Aug 22 02:19:33 CEST 2005 Daniel Veillard <daniel@veillard.com>
* xmlregexp.c include/libxml/xmlregexp.h: pushing the formal expression
handling code to have it in CVs from now. Not plugged, and misses
APIs it's not compiled in yet.
Sat Aug 20 23:13:27 CEST 2005 Daniel Veillard <daniel@veillard.com>
* xmlreader.c: applied another patch from Rob Richards to fix

View File

@ -99,6 +99,63 @@ XMLPUBFUN int XMLCALL
int *nbneg,
xmlChar **values,
int *terminal);
#ifdef LIBXML_EXPR_ENABLED
/*
* Formal regular expression handling
* Its goal is to do some formal work on content models
*/
/* expressions are used within a context */
typedef struct _xmlExpCtxt xmlExpCtxt;
typedef xmlExpCtxt *xmlExpCtxtPtr;
XMLPUBFUN void XMLCALL
xmlExpFreeCtxt (xmlExpCtxtPtr ctxt);
XMLPUBFUN xmlExpCtxtPtr XMLCALL
xmlExpNewCtxt (int maxNodes,
xmlDictPtr dict);
/* Expressions are trees but the tree is opaque */
typedef struct _xmlExpNode xmlExpNode;
typedef xmlExpNode *xmlExpNodePtr;
/*
* 2 core expressions shared by all for the empty language set
* and for the set with just the empty token
*/
XMLPUBVAR xmlExpNodePtr forbiddenExp;
XMLPUBVAR xmlExpNodePtr emptyExp;
/*
* Expressions are reference counted internally
*/
XMLPUBFUN void XMLCALL
xmlExpFree (xmlExpCtxtPtr ctxt,
xmlExpNodePtr exp);
XMLPUBFUN void XMLCALL
xmlExpRef (xmlExpNodePtr exp);
XMLPUBFUN int XMLCALL
xmlExpIsNillable(xmlExpNodePtr exp);
XMLPUBFUN int XMLCALL
xmlExpGetLanguage(xmlExpCtxtPtr ctxt,
xmlExpNodePtr exp,
const xmlChar**list,
int len);
XMLPUBFUN int XMLCALL
xmlExpGetStart (xmlExpCtxtPtr ctxt,
xmlExpNodePtr exp,
const xmlChar**list,
int len);
XMLPUBFUN xmlExpNodePtr XMLCALL
xmlExpStringDerive(xmlExpCtxtPtr ctxt,
xmlExpNodePtr exp,
const xmlChar *str,
int len);
XMLPUBFUN int XMLCALL
xmlExpSubsume (xmlExpCtxtPtr ctxt,
xmlExpNodePtr exp,
xmlExpNodePtr sub);
#endif /* LIBXML_EXPR_ENABLED */
#ifdef __cplusplus
}
#endif

File diff suppressed because it is too large Load Diff