Edit

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

Branch :

  • Show log

    Commit

  • Author : Daniel Veillard
    Date : 2004-01-23 13:15:13
    Hash : 4773df2a
    Message : added io1.c an example ox xmlIO usage and io1.res test result, fixed a * doc/examples/*: added io1.c an example ox xmlIO usage and io1.res test result, fixed a awful lot of memory leaks showing up in testWriter.c, changed the examples and the Makefiles to test memory leaks. * xmlwriter.c: fixed a memory leak * Makefile.am: run the doc/examples regression tests as part of make tests * xpath.c include/libxml/xpath.h: added xmlXPathCtxtCompile() to compile an XPath expression within a context, currently the goal is to be able to reuse the XSLT stylesheet dictionnary, but this opens the door to others possible optimizations. * dict.c include/libxml/dict.h: added xmlDictCreateSub() which allows to build a new dictionnary based on another read-only dictionnary. This is needed for XSLT to keep the stylesheet dictionnary read-only while being able to reuse the strings for the transformation dictionnary. * xinclude.c: fixed a dictionnar reference counting problem occuring when document parsing failed. * testSAX.c: adding option --repeat for timing 100times the parsing * doc/* : rebuilt all the docs Daniel

  • include/libxml/dict.h
  • /*
     * Summary: string dictionnary
     * Description: dictionary of reusable strings, just used to avoid allocation
     *         and freeing operations.
     *
     * Copy: See Copyright for the status of this software.
     *
     * Author: Daniel Veillard
     */
    
    #ifndef __XML_DICT_H__
    #define __XML_DICT_H__
    
    #include <libxml/xmlversion.h>
    #include <libxml/tree.h>
    
    #ifdef __cplusplus
    extern "C" {
    #endif
    
    /*
     * The dictionnary.
     */
    typedef struct _xmlDict xmlDict;
    typedef xmlDict *xmlDictPtr;
    
    /*
     * Constructor and destructor.
     */
    XMLPUBFUN xmlDictPtr XMLCALL
    			xmlDictCreate	(void);
    XMLPUBFUN xmlDictPtr XMLCALL
    			xmlDictCreateSub(xmlDictPtr sub);
    XMLPUBFUN int XMLCALL
    			xmlDictReference(xmlDictPtr dict);
    XMLPUBFUN void XMLCALL			
    			xmlDictFree	(xmlDictPtr dict);
    
    /*
     * Lookup of entry in the dictionnary.
     */
    XMLPUBFUN const xmlChar * XMLCALL		
    			xmlDictLookup	(xmlDictPtr dict,
    		                         const xmlChar *name,
    		                         int len);
    XMLPUBFUN const xmlChar * XMLCALL		
    			xmlDictQLookup	(xmlDictPtr dict,
    		                         const xmlChar *prefix,
    		                         const xmlChar *name);
    XMLPUBFUN int XMLCALL
    			xmlDictOwns	(xmlDictPtr dict,
    					 const xmlChar *str);
    XMLPUBFUN int XMLCALL			
    			xmlDictSize	(xmlDictPtr dict);
    #ifdef __cplusplus
    }
    #endif
    #endif /* ! __XML_DICT_H__ */