Edit

kc3-lang/libxml2/xpointer.h

Branch :

  • Show log

    Commit

  • Author : Daniel Veillard
    Date : 2000-11-24 23:36:01
    Hash : f62ceffb
    Message : General fixes, XPointer improvements: - HTMLparser.c: some fixes on auto-open of html/head/body - encoding.c: fixed a compilation error on some gcc env - xpath.c xpointer.[ch] xpathInternals.h: improved the XPointer implementation - test/XPath/xptr/strpoint test/XPath/xptr/strrange3: added related XPointer tests and associated results Daniel

  • xpointer.h
  • /*
     * xpointer.h : API to handle XML Pointers
     *
     * World Wide Web Consortium Working Draft 03-March-1998 
     * http://www.w3.org/TR/1998/WD-xptr-19980303
     *
     * See Copyright for the status of this software.
     *
     * Daniel.Veillard@w3.org
     */
    
    #ifndef __XML_XPTR_H__
    #define __XML_XPTR_H__
    
    #include <libxml/tree.h>
    #include <libxml/xpath.h>
    
    #ifdef __cplusplus
    extern "C" {
    #endif
    
    /*
     * A Location Set
     */
    typedef struct _xmlLocationSet xmlLocationSet;
    typedef xmlLocationSet *xmlLocationSetPtr;
    struct _xmlLocationSet {
        int locNr;		      /* number of locations in the set */
        int locMax;		      /* size of the array as allocated */
        xmlXPathObjectPtr *locTab;/* array of locations */
    };
    
    /*
     * Handling of location sets
     */
    
    void			xmlXPtrFreeLocationSet	(xmlLocationSetPtr obj);
    xmlLocationSetPtr	xmlXPtrLocationSetMerge	(xmlLocationSetPtr val1,
    						 xmlLocationSetPtr val2);
    
    /*
     * Functions
     */
    xmlXPathContextPtr	xmlXPtrNewContext	(xmlDocPtr doc,
    						 xmlNodePtr here,
    						 xmlNodePtr origin);
    xmlXPathObjectPtr	xmlXPtrEval		(const xmlChar *str,
    						 xmlXPathContextPtr ctx);
    void			xmlXPtrRangeToFunction	(xmlXPathParserContextPtr ctxt,
           						 int nargs);
    xmlNodePtr		xmlXPtrBuildNodeList	(xmlXPathObjectPtr obj);
    void		xmlXPtrEvalRangePredicate	(xmlXPathParserContextPtr ctxt);
    
    #ifdef __cplusplus
    }
    #endif
    #endif /* __XML_XPTR_H__ */