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