1*7c568831SAndroid Build Coastguard Worker /* 2*7c568831SAndroid Build Coastguard Worker * Summary: string dictionary 3*7c568831SAndroid Build Coastguard Worker * Description: dictionary of reusable strings, just used to avoid allocation 4*7c568831SAndroid Build Coastguard Worker * and freeing operations. 5*7c568831SAndroid Build Coastguard Worker * 6*7c568831SAndroid Build Coastguard Worker * Copy: See Copyright for the status of this software. 7*7c568831SAndroid Build Coastguard Worker * 8*7c568831SAndroid Build Coastguard Worker * Author: Daniel Veillard 9*7c568831SAndroid Build Coastguard Worker */ 10*7c568831SAndroid Build Coastguard Worker 11*7c568831SAndroid Build Coastguard Worker #ifndef __XML_DICT_H__ 12*7c568831SAndroid Build Coastguard Worker #define __XML_DICT_H__ 13*7c568831SAndroid Build Coastguard Worker 14*7c568831SAndroid Build Coastguard Worker #include <stddef.h> 15*7c568831SAndroid Build Coastguard Worker #include <libxml/xmlversion.h> 16*7c568831SAndroid Build Coastguard Worker #include <libxml/xmlstring.h> 17*7c568831SAndroid Build Coastguard Worker 18*7c568831SAndroid Build Coastguard Worker #ifdef __cplusplus 19*7c568831SAndroid Build Coastguard Worker extern "C" { 20*7c568831SAndroid Build Coastguard Worker #endif 21*7c568831SAndroid Build Coastguard Worker 22*7c568831SAndroid Build Coastguard Worker /* 23*7c568831SAndroid Build Coastguard Worker * The dictionary. 24*7c568831SAndroid Build Coastguard Worker */ 25*7c568831SAndroid Build Coastguard Worker typedef struct _xmlDict xmlDict; 26*7c568831SAndroid Build Coastguard Worker typedef xmlDict *xmlDictPtr; 27*7c568831SAndroid Build Coastguard Worker 28*7c568831SAndroid Build Coastguard Worker /* 29*7c568831SAndroid Build Coastguard Worker * Initializer 30*7c568831SAndroid Build Coastguard Worker */ 31*7c568831SAndroid Build Coastguard Worker XML_DEPRECATED 32*7c568831SAndroid Build Coastguard Worker XMLPUBFUN int xmlInitializeDict(void); 33*7c568831SAndroid Build Coastguard Worker 34*7c568831SAndroid Build Coastguard Worker /* 35*7c568831SAndroid Build Coastguard Worker * Constructor and destructor. 36*7c568831SAndroid Build Coastguard Worker */ 37*7c568831SAndroid Build Coastguard Worker XMLPUBFUN xmlDictPtr 38*7c568831SAndroid Build Coastguard Worker xmlDictCreate (void); 39*7c568831SAndroid Build Coastguard Worker XMLPUBFUN size_t 40*7c568831SAndroid Build Coastguard Worker xmlDictSetLimit (xmlDictPtr dict, 41*7c568831SAndroid Build Coastguard Worker size_t limit); 42*7c568831SAndroid Build Coastguard Worker XMLPUBFUN size_t 43*7c568831SAndroid Build Coastguard Worker xmlDictGetUsage (xmlDictPtr dict); 44*7c568831SAndroid Build Coastguard Worker XMLPUBFUN xmlDictPtr 45*7c568831SAndroid Build Coastguard Worker xmlDictCreateSub(xmlDictPtr sub); 46*7c568831SAndroid Build Coastguard Worker XMLPUBFUN int 47*7c568831SAndroid Build Coastguard Worker xmlDictReference(xmlDictPtr dict); 48*7c568831SAndroid Build Coastguard Worker XMLPUBFUN void 49*7c568831SAndroid Build Coastguard Worker xmlDictFree (xmlDictPtr dict); 50*7c568831SAndroid Build Coastguard Worker 51*7c568831SAndroid Build Coastguard Worker /* 52*7c568831SAndroid Build Coastguard Worker * Lookup of entry in the dictionary. 53*7c568831SAndroid Build Coastguard Worker */ 54*7c568831SAndroid Build Coastguard Worker XMLPUBFUN const xmlChar * 55*7c568831SAndroid Build Coastguard Worker xmlDictLookup (xmlDictPtr dict, 56*7c568831SAndroid Build Coastguard Worker const xmlChar *name, 57*7c568831SAndroid Build Coastguard Worker int len); 58*7c568831SAndroid Build Coastguard Worker XMLPUBFUN const xmlChar * 59*7c568831SAndroid Build Coastguard Worker xmlDictExists (xmlDictPtr dict, 60*7c568831SAndroid Build Coastguard Worker const xmlChar *name, 61*7c568831SAndroid Build Coastguard Worker int len); 62*7c568831SAndroid Build Coastguard Worker XMLPUBFUN const xmlChar * 63*7c568831SAndroid Build Coastguard Worker xmlDictQLookup (xmlDictPtr dict, 64*7c568831SAndroid Build Coastguard Worker const xmlChar *prefix, 65*7c568831SAndroid Build Coastguard Worker const xmlChar *name); 66*7c568831SAndroid Build Coastguard Worker XMLPUBFUN int 67*7c568831SAndroid Build Coastguard Worker xmlDictOwns (xmlDictPtr dict, 68*7c568831SAndroid Build Coastguard Worker const xmlChar *str); 69*7c568831SAndroid Build Coastguard Worker XMLPUBFUN int 70*7c568831SAndroid Build Coastguard Worker xmlDictSize (xmlDictPtr dict); 71*7c568831SAndroid Build Coastguard Worker 72*7c568831SAndroid Build Coastguard Worker /* 73*7c568831SAndroid Build Coastguard Worker * Cleanup function 74*7c568831SAndroid Build Coastguard Worker */ 75*7c568831SAndroid Build Coastguard Worker XML_DEPRECATED 76*7c568831SAndroid Build Coastguard Worker XMLPUBFUN void 77*7c568831SAndroid Build Coastguard Worker xmlDictCleanup (void); 78*7c568831SAndroid Build Coastguard Worker 79*7c568831SAndroid Build Coastguard Worker #ifdef __cplusplus 80*7c568831SAndroid Build Coastguard Worker } 81*7c568831SAndroid Build Coastguard Worker #endif 82*7c568831SAndroid Build Coastguard Worker #endif /* ! __XML_DICT_H__ */ 83