Edit

kc3-lang/libxml2/include/libxml/xmlregexp.h

Branch :

  • Show log

    Commit

  • Author : Daniel Veillard
    Date : 2002-04-16 15:50:10
    Hash : 4255d504
    Message : merged the current state of XML Schemas implementation, it is not * Makefile.am TODO_SCHEMAS configure.in genUnicode.py testAutomata.c testRegexp.c testSchemas.c xmlregexp.c xmlschemas.c xmlschemastypes.c xmlunicode.c include/libxml/Makefile.am include/libxml/schemasInternals.h include/libxml/xmlautomata.h include/libxml/xmlregexp.h include/libxml/xmlschemas.h include/libxml/xmlschemastypes.h include/libxml/xmlunicode.h include/libxml/xmlversion.h.in : merged the current state of XML Schemas implementation, it is not configured in by default, a specific --schemas configure option has been added. * test/automata test/regexp test/schemas Makefile.am result/automata result/regexp result/schemas: merged automata/regexp/schemas regression tests Daniel

  • include/libxml/xmlregexp.h
  • /*
     * regexp.h : describes the basic API for libxml regular expressions handling
     *
     * See Copyright for the status of this software.
     *
     * Daniel Veillard <veillard@redhat.com>
     */
    
    #ifndef __XML_REGEXP_H__
    #define __XML_REGEXP_H__
    
    #if defined(WIN32) && defined(_MSC_VER)
    #include <libxml/xmlwin32version.h>
    #else
    #include <libxml/xmlversion.h>
    #endif
    #ifdef LIBXML_REGEXP_ENABLED
    
    #include <libxml/tree.h>
    
    #ifdef __cplusplus
    extern "C" {
    #endif
    
    /**
     * xmlRegexpPtr:
     *
     * A libxml regular expression, they can actually be far more complex
     * thank the POSIX regex expressions.
     */
    typedef struct _xmlRegexp xmlRegexp;
    typedef xmlRegexp *xmlRegexpPtr;
    
    /**
     * xmlRegExecCtxtPtr:
     *
     * A libxml progressive regular expression evaluation context
     */
    typedef struct _xmlRegExecCtxt xmlRegExecCtxt;
    typedef xmlRegExecCtxt *xmlRegExecCtxtPtr;
    
    /*
     * The POSIX like API
     */
    xmlRegexpPtr		xmlRegexpCompile(const xmlChar *regexp);
    void			xmlRegFreeRegexp(xmlRegexpPtr regexp);
    int			xmlRegexpExec	(xmlRegexpPtr comp,
    					 const xmlChar *value);
    void			xmlRegexpPrint	(FILE *output,
    					 xmlRegexpPtr regexp);
    
    /*
     * Callback function when doing a transition in the automata
     */
    typedef void (*xmlRegExecCallbacks) (xmlRegExecCtxtPtr exec,
    	                             const xmlChar *token,
    				     void *transdata,
    				     void *inputdata);
    
    /*
     * The progressive API
     */
    xmlRegExecCtxtPtr	xmlRegNewExecCtxt	(xmlRegexpPtr comp,
    						 xmlRegExecCallbacks callback,
    						 void *data);
    void			xmlRegFreeExecCtxt	(xmlRegExecCtxtPtr exec);
    int			xmlRegExecPushString	(xmlRegExecCtxtPtr exec,
    						 const xmlChar *value,
    						 void *data);
    
    #ifdef __cplusplus
    }
    #endif 
    
    #endif /* LIBXML_REGEXP_ENABLED */
    
    #endif /*__XML_REGEXP_H__ */