blob: 3a832f6ab1b7298502d617f20b5b79a0a0183fd4 [file] [log] [blame]
Daniel Veillardb8478642001-10-12 17:29:10 +00001/*
2 * globals.h: interface for all global variables of the library
3 *
4 * The bottom of this file is automatically generated by build_glob.py
5 * based on the description file global.data
6 *
7 * See Copyright for the status of this software.
8 *
9 * Gary Pennington <Gary.Pennington@uk.sun.com>
10 * daniel@veillard.com
11 */
12
13#ifndef __XML_GLOBALS_H
14#define __XML_GLOBALS_H
15
16#include <libxml/parser.h>
17#include <libxml/xmlerror.h>
18#include <libxml/SAX.h>
Daniel Veillard6c4ffaf2002-02-11 08:54:05 +000019#include <libxml/xmlmemory.h>
Daniel Veillardb8478642001-10-12 17:29:10 +000020
21#ifdef __cplusplus
22extern "C" {
23#endif
24
Daniel Veillard781ac8b2003-05-15 22:11:36 +000025void xmlInitGlobals(void);
26void xmlCleanupGlobals(void);
27
Daniel Veillardb8478642001-10-12 17:29:10 +000028/*
29 * Externally global symbols which need to be protected for backwards
30 * compatibility support.
31 */
Daniel Veillardd0463562001-10-13 09:15:48 +000032
Daniel Veillardb8478642001-10-12 17:29:10 +000033#undef docbDefaultSAXHandler
34#undef htmlDefaultSAXHandler
35#undef oldXMLWDcompatibility
36#undef xmlBufferAllocScheme
37#undef xmlDefaultBufferSize
38#undef xmlDefaultSAXHandler
39#undef xmlDefaultSAXLocator
40#undef xmlDoValidityCheckingDefaultValue
41#undef xmlFree
42#undef xmlGenericError
43#undef xmlGenericErrorContext
44#undef xmlGetWarningsDefaultValue
45#undef xmlIndentTreeOutput
Aleksey Sanin23002562002-05-24 07:18:40 +000046#undef xmlTreeIndentString
Daniel Veillardb8478642001-10-12 17:29:10 +000047#undef xmlKeepBlanksDefaultValue
48#undef xmlLineNumbersDefaultValue
49#undef xmlLoadExtDtdDefaultValue
50#undef xmlMalloc
Daniel Veillard3c908dc2003-04-19 00:07:51 +000051#undef xmlMallocAtomic
Daniel Veillardb8478642001-10-12 17:29:10 +000052#undef xmlMemStrdup
53#undef xmlParserDebugEntities
54#undef xmlParserVersion
55#undef xmlPedanticParserDefaultValue
56#undef xmlRealloc
57#undef xmlSaveNoEmptyTags
Daniel Veillardb8478642001-10-12 17:29:10 +000058#undef xmlSubstituteEntitiesDefaultValue
Daniel Veillard5335dc52003-01-01 20:59:38 +000059#undef xmlRegisterNodeDefaultValue
60#undef xmlDeregisterNodeDefaultValue
61
Daniel Veillard8326e732003-01-07 00:19:07 +000062typedef void (*xmlRegisterNodeFunc) (xmlNodePtr node);
63typedef void (*xmlDeregisterNodeFunc) (xmlNodePtr node);
Daniel Veillardb8478642001-10-12 17:29:10 +000064
65typedef struct _xmlGlobalState xmlGlobalState;
66typedef xmlGlobalState *xmlGlobalStatePtr;
67struct _xmlGlobalState
68{
Daniel Veillardd0463562001-10-13 09:15:48 +000069 const char *xmlParserVersion;
70
Daniel Veillard3c01b1d2001-10-17 15:58:35 +000071 xmlSAXLocator xmlDefaultSAXLocator;
72 xmlSAXHandler xmlDefaultSAXHandler;
73 xmlSAXHandler docbDefaultSAXHandler;
74 xmlSAXHandler htmlDefaultSAXHandler;
75
Daniel Veillardb8478642001-10-12 17:29:10 +000076 xmlFreeFunc xmlFree;
Daniel Veillardd0463562001-10-13 09:15:48 +000077 xmlMallocFunc xmlMalloc;
78 xmlStrdupFunc xmlMemStrdup;
79 xmlReallocFunc xmlRealloc;
80
Daniel Veillardb8478642001-10-12 17:29:10 +000081 xmlGenericErrorFunc xmlGenericError;
82 void *xmlGenericErrorContext;
Daniel Veillardd0463562001-10-13 09:15:48 +000083
Daniel Veillardd0463562001-10-13 09:15:48 +000084 int oldXMLWDcompatibility;
85
86 xmlBufferAllocationScheme xmlBufferAllocScheme;
87 int xmlDefaultBufferSize;
88
89 int xmlSubstituteEntitiesDefaultValue;
90 int xmlDoValidityCheckingDefaultValue;
Daniel Veillardb8478642001-10-12 17:29:10 +000091 int xmlGetWarningsDefaultValue;
Daniel Veillardb8478642001-10-12 17:29:10 +000092 int xmlKeepBlanksDefaultValue;
93 int xmlLineNumbersDefaultValue;
94 int xmlLoadExtDtdDefaultValue;
Daniel Veillardb8478642001-10-12 17:29:10 +000095 int xmlParserDebugEntities;
Daniel Veillardb8478642001-10-12 17:29:10 +000096 int xmlPedanticParserDefaultValue;
Daniel Veillardd0463562001-10-13 09:15:48 +000097
Daniel Veillardb8478642001-10-12 17:29:10 +000098 int xmlSaveNoEmptyTags;
Daniel Veillardd0463562001-10-13 09:15:48 +000099 int xmlIndentTreeOutput;
Aleksey Sanin23002562002-05-24 07:18:40 +0000100 const char *xmlTreeIndentString;
Daniel Veillard5335dc52003-01-01 20:59:38 +0000101
102 xmlRegisterNodeFunc xmlRegisterNodeDefaultValue;
103 xmlDeregisterNodeFunc xmlDeregisterNodeDefaultValue;
Daniel Veillard3c908dc2003-04-19 00:07:51 +0000104
105 xmlMallocFunc xmlMallocAtomic;
Daniel Veillardb8478642001-10-12 17:29:10 +0000106};
107
Daniel Veillard6c4ffaf2002-02-11 08:54:05 +0000108#ifdef __cplusplus
109}
110#endif
111#include <libxml/threads.h>
112#ifdef __cplusplus
113extern "C" {
114#endif
115
Daniel Veillardb8478642001-10-12 17:29:10 +0000116void xmlInitializeGlobalState(xmlGlobalStatePtr gs);
117
Daniel Veillard781ac8b2003-05-15 22:11:36 +0000118void xmlThrDefSetGenericErrorFunc(void *ctx, xmlGenericErrorFunc handler);
119
Daniel Veillard5335dc52003-01-01 20:59:38 +0000120xmlRegisterNodeFunc xmlRegisterNodeDefault(xmlRegisterNodeFunc func);
Daniel Veillard781ac8b2003-05-15 22:11:36 +0000121xmlRegisterNodeFunc xmlThrDefRegisterNodeDefault(xmlRegisterNodeFunc func);
Daniel Veillard5335dc52003-01-01 20:59:38 +0000122xmlDeregisterNodeFunc xmlDeregisterNodeDefault(xmlDeregisterNodeFunc func);
Daniel Veillard781ac8b2003-05-15 22:11:36 +0000123xmlDeregisterNodeFunc xmlThrDefDeregisterNodeDefault(xmlDeregisterNodeFunc func);
Daniel Veillard5335dc52003-01-01 20:59:38 +0000124
Daniel Veillardb8478642001-10-12 17:29:10 +0000125/*
Daniel Veillard64a411c2001-10-15 12:32:07 +0000126 * In general the memory allocation entry points are not kept
Daniel Veillardcbaf3992001-12-31 16:16:02 +0000127 * thread specific but this can be overridden by LIBXML_THREAD_ALLOC_ENABLED
Daniel Veillard64a411c2001-10-15 12:32:07 +0000128 * - xmlMalloc
Daniel Veillard3c908dc2003-04-19 00:07:51 +0000129 * - xmlMallocAtomic
Daniel Veillard64a411c2001-10-15 12:32:07 +0000130 * - xmlRealloc
131 * - xmlMemStrdup
132 * - xmlFree
133 */
134
135#ifdef LIBXML_THREAD_ALLOC_ENABLED
136#ifdef LIBXML_THREAD_ENABLED
137extern xmlMallocFunc *__xmlMalloc(void);
138#define xmlMalloc \
139(*(__xmlMalloc()))
140#else
141LIBXML_DLL_IMPORT extern xmlMallocFunc xmlMalloc;
142#endif
143
144#ifdef LIBXML_THREAD_ENABLED
Daniel Veillard3c908dc2003-04-19 00:07:51 +0000145extern xmlMallocFunc *__xmlMallocAtomic(void);
146#define xmlMallocAtomic \
147(*(__xmlMallocAtomic()))
148#else
149LIBXML_DLL_IMPORT extern xmlMallocFunc xmlMallocAtomic;
150#endif
151
152#ifdef LIBXML_THREAD_ENABLED
Daniel Veillard64a411c2001-10-15 12:32:07 +0000153extern xmlReallocFunc *__xmlRealloc(void);
154#define xmlRealloc \
155(*(__xmlRealloc()))
156#else
157LIBXML_DLL_IMPORT extern xmlReallocFunc xmlRealloc;
158#endif
159
160#ifdef LIBXML_THREAD_ENABLED
161extern xmlFreeFunc *__xmlFree(void);
162#define xmlFree \
163(*(__xmlFree()))
164#else
165LIBXML_DLL_IMPORT extern xmlFreeFunc xmlFree;
166#endif
167
168#ifdef LIBXML_THREAD_ENABLED
169extern xmlStrdupFunc *__xmlMemStrdup(void);
170#define xmlMemStrdup \
171(*(__xmlMemStrdup()))
172#else
173LIBXML_DLL_IMPORT extern xmlStrdupFunc xmlMemStrdup;
174#endif
Daniel Veillard3c908dc2003-04-19 00:07:51 +0000175
Daniel Veillard64a411c2001-10-15 12:32:07 +0000176#else /* !LIBXML_THREAD_ALLOC_ENABLED */
177LIBXML_DLL_IMPORT extern xmlMallocFunc xmlMalloc;
Daniel Veillard3c908dc2003-04-19 00:07:51 +0000178LIBXML_DLL_IMPORT extern xmlMallocFunc xmlMallocAtomic;
Daniel Veillard64a411c2001-10-15 12:32:07 +0000179LIBXML_DLL_IMPORT extern xmlReallocFunc xmlRealloc;
180LIBXML_DLL_IMPORT extern xmlFreeFunc xmlFree;
181LIBXML_DLL_IMPORT extern xmlStrdupFunc xmlMemStrdup;
182#endif /* LIBXML_THREAD_ALLOC_ENABLED */
183
Daniel Veillard0ba59232002-02-10 13:20:39 +0000184#ifdef LIBXML_DOCB_ENABLED
185extern xmlSAXHandler *__docbDefaultSAXHandler(void);
186#ifdef LIBXML_THREAD_ENABLED
187#define docbDefaultSAXHandler \
188(*(__docbDefaultSAXHandler()))
189#else
190LIBXML_DLL_IMPORT extern xmlSAXHandler docbDefaultSAXHandler;
191#endif
192#endif
193
194#ifdef LIBXML_HTML_ENABLED
195extern xmlSAXHandler *__htmlDefaultSAXHandler(void);
196#ifdef LIBXML_THREAD_ENABLED
197#define htmlDefaultSAXHandler \
198(*(__htmlDefaultSAXHandler()))
199#else
200LIBXML_DLL_IMPORT extern xmlSAXHandler htmlDefaultSAXHandler;
201#endif
202#endif
203
204
Daniel Veillard64a411c2001-10-15 12:32:07 +0000205/*
Daniel Veillardb8478642001-10-12 17:29:10 +0000206 * Everything starting from the line below is
207 * Automatically generated by build_glob.py.
208 * Do not modify the previous line.
209 */
210
211
Daniel Veillardb8478642001-10-12 17:29:10 +0000212extern int *__oldXMLWDcompatibility(void);
Daniel Veillard0ba59232002-02-10 13:20:39 +0000213#ifdef LIBXML_THREAD_ENABLED
Daniel Veillardb8478642001-10-12 17:29:10 +0000214#define oldXMLWDcompatibility \
215(*(__oldXMLWDcompatibility()))
216#else
Daniel Veillardd0463562001-10-13 09:15:48 +0000217LIBXML_DLL_IMPORT extern int oldXMLWDcompatibility;
Daniel Veillardb8478642001-10-12 17:29:10 +0000218#endif
219
Daniel Veillardb8478642001-10-12 17:29:10 +0000220extern xmlBufferAllocationScheme *__xmlBufferAllocScheme(void);
Daniel Veillard0ba59232002-02-10 13:20:39 +0000221#ifdef LIBXML_THREAD_ENABLED
Daniel Veillardb8478642001-10-12 17:29:10 +0000222#define xmlBufferAllocScheme \
223(*(__xmlBufferAllocScheme()))
224#else
Daniel Veillardd0463562001-10-13 09:15:48 +0000225LIBXML_DLL_IMPORT extern xmlBufferAllocationScheme xmlBufferAllocScheme;
Daniel Veillardb8478642001-10-12 17:29:10 +0000226#endif
Daniel Veillard781ac8b2003-05-15 22:11:36 +0000227xmlBufferAllocationScheme xmlThrDefBufferAllocScheme(xmlBufferAllocationScheme v);
Daniel Veillardb8478642001-10-12 17:29:10 +0000228
Daniel Veillardb8478642001-10-12 17:29:10 +0000229extern int *__xmlDefaultBufferSize(void);
Daniel Veillard0ba59232002-02-10 13:20:39 +0000230#ifdef LIBXML_THREAD_ENABLED
Daniel Veillardb8478642001-10-12 17:29:10 +0000231#define xmlDefaultBufferSize \
232(*(__xmlDefaultBufferSize()))
233#else
Daniel Veillardd0463562001-10-13 09:15:48 +0000234LIBXML_DLL_IMPORT extern int xmlDefaultBufferSize;
Daniel Veillardb8478642001-10-12 17:29:10 +0000235#endif
Daniel Veillard781ac8b2003-05-15 22:11:36 +0000236int xmlThrDefDefaultBufferSize(int v);
Daniel Veillardb8478642001-10-12 17:29:10 +0000237
Daniel Veillardb8478642001-10-12 17:29:10 +0000238extern xmlSAXHandler *__xmlDefaultSAXHandler(void);
Daniel Veillard0ba59232002-02-10 13:20:39 +0000239#ifdef LIBXML_THREAD_ENABLED
Daniel Veillardb8478642001-10-12 17:29:10 +0000240#define xmlDefaultSAXHandler \
241(*(__xmlDefaultSAXHandler()))
242#else
Daniel Veillardd0463562001-10-13 09:15:48 +0000243LIBXML_DLL_IMPORT extern xmlSAXHandler xmlDefaultSAXHandler;
Daniel Veillardb8478642001-10-12 17:29:10 +0000244#endif
245
Daniel Veillardb8478642001-10-12 17:29:10 +0000246extern xmlSAXLocator *__xmlDefaultSAXLocator(void);
Daniel Veillard0ba59232002-02-10 13:20:39 +0000247#ifdef LIBXML_THREAD_ENABLED
Daniel Veillardb8478642001-10-12 17:29:10 +0000248#define xmlDefaultSAXLocator \
249(*(__xmlDefaultSAXLocator()))
250#else
Daniel Veillardd0463562001-10-13 09:15:48 +0000251LIBXML_DLL_IMPORT extern xmlSAXLocator xmlDefaultSAXLocator;
Daniel Veillardb8478642001-10-12 17:29:10 +0000252#endif
253
Daniel Veillardb8478642001-10-12 17:29:10 +0000254extern int *__xmlDoValidityCheckingDefaultValue(void);
Daniel Veillard0ba59232002-02-10 13:20:39 +0000255#ifdef LIBXML_THREAD_ENABLED
Daniel Veillardb8478642001-10-12 17:29:10 +0000256#define xmlDoValidityCheckingDefaultValue \
257(*(__xmlDoValidityCheckingDefaultValue()))
258#else
Daniel Veillardd0463562001-10-13 09:15:48 +0000259LIBXML_DLL_IMPORT extern int xmlDoValidityCheckingDefaultValue;
Daniel Veillardb8478642001-10-12 17:29:10 +0000260#endif
Daniel Veillard781ac8b2003-05-15 22:11:36 +0000261int xmlThrDefDoValidityCheckingDefaultValue(int v);
Daniel Veillardb8478642001-10-12 17:29:10 +0000262
Daniel Veillardb8478642001-10-12 17:29:10 +0000263extern xmlGenericErrorFunc *__xmlGenericError(void);
Daniel Veillard0ba59232002-02-10 13:20:39 +0000264#ifdef LIBXML_THREAD_ENABLED
Daniel Veillardb8478642001-10-12 17:29:10 +0000265#define xmlGenericError \
266(*(__xmlGenericError()))
267#else
Daniel Veillardd0463562001-10-13 09:15:48 +0000268LIBXML_DLL_IMPORT extern xmlGenericErrorFunc xmlGenericError;
Daniel Veillardb8478642001-10-12 17:29:10 +0000269#endif
270
Daniel Veillardb8478642001-10-12 17:29:10 +0000271extern void * *__xmlGenericErrorContext(void);
Daniel Veillard0ba59232002-02-10 13:20:39 +0000272#ifdef LIBXML_THREAD_ENABLED
Daniel Veillardb8478642001-10-12 17:29:10 +0000273#define xmlGenericErrorContext \
274(*(__xmlGenericErrorContext()))
275#else
Daniel Veillardd0463562001-10-13 09:15:48 +0000276LIBXML_DLL_IMPORT extern void * xmlGenericErrorContext;
Daniel Veillardb8478642001-10-12 17:29:10 +0000277#endif
278
Daniel Veillardb8478642001-10-12 17:29:10 +0000279extern int *__xmlGetWarningsDefaultValue(void);
Daniel Veillard0ba59232002-02-10 13:20:39 +0000280#ifdef LIBXML_THREAD_ENABLED
Daniel Veillardb8478642001-10-12 17:29:10 +0000281#define xmlGetWarningsDefaultValue \
282(*(__xmlGetWarningsDefaultValue()))
283#else
Daniel Veillardd0463562001-10-13 09:15:48 +0000284LIBXML_DLL_IMPORT extern int xmlGetWarningsDefaultValue;
Daniel Veillardb8478642001-10-12 17:29:10 +0000285#endif
Daniel Veillard781ac8b2003-05-15 22:11:36 +0000286int xmlThrDefGetWarningsDefaultValue(int v);
Daniel Veillardb8478642001-10-12 17:29:10 +0000287
Daniel Veillardb8478642001-10-12 17:29:10 +0000288extern int *__xmlIndentTreeOutput(void);
Daniel Veillard0ba59232002-02-10 13:20:39 +0000289#ifdef LIBXML_THREAD_ENABLED
Daniel Veillardb8478642001-10-12 17:29:10 +0000290#define xmlIndentTreeOutput \
291(*(__xmlIndentTreeOutput()))
292#else
Daniel Veillardd0463562001-10-13 09:15:48 +0000293LIBXML_DLL_IMPORT extern int xmlIndentTreeOutput;
Daniel Veillardb8478642001-10-12 17:29:10 +0000294#endif
Daniel Veillard781ac8b2003-05-15 22:11:36 +0000295int xmlThrDefIndentTreeOutput(int v);
Daniel Veillardb8478642001-10-12 17:29:10 +0000296
Aleksey Sanin23002562002-05-24 07:18:40 +0000297extern const char * *__xmlTreeIndentString(void);
298#ifdef LIBXML_THREAD_ENABLED
299#define xmlTreeIndentString \
300(*(__xmlTreeIndentString()))
301#else
302LIBXML_DLL_IMPORT extern const char * xmlTreeIndentString;
303#endif
Daniel Veillard781ac8b2003-05-15 22:11:36 +0000304const char * xmlThrDefTreeIndentString(const char * v);
Aleksey Sanin23002562002-05-24 07:18:40 +0000305
Daniel Veillardb8478642001-10-12 17:29:10 +0000306extern int *__xmlKeepBlanksDefaultValue(void);
Daniel Veillard0ba59232002-02-10 13:20:39 +0000307#ifdef LIBXML_THREAD_ENABLED
Daniel Veillardb8478642001-10-12 17:29:10 +0000308#define xmlKeepBlanksDefaultValue \
309(*(__xmlKeepBlanksDefaultValue()))
310#else
Daniel Veillardd0463562001-10-13 09:15:48 +0000311LIBXML_DLL_IMPORT extern int xmlKeepBlanksDefaultValue;
Daniel Veillardb8478642001-10-12 17:29:10 +0000312#endif
Daniel Veillard781ac8b2003-05-15 22:11:36 +0000313int xmlThrDefKeepBlanksDefaultValue(int v);
Daniel Veillardb8478642001-10-12 17:29:10 +0000314
Daniel Veillardb8478642001-10-12 17:29:10 +0000315extern int *__xmlLineNumbersDefaultValue(void);
Daniel Veillard0ba59232002-02-10 13:20:39 +0000316#ifdef LIBXML_THREAD_ENABLED
Daniel Veillardb8478642001-10-12 17:29:10 +0000317#define xmlLineNumbersDefaultValue \
318(*(__xmlLineNumbersDefaultValue()))
319#else
Daniel Veillardd0463562001-10-13 09:15:48 +0000320LIBXML_DLL_IMPORT extern int xmlLineNumbersDefaultValue;
Daniel Veillardb8478642001-10-12 17:29:10 +0000321#endif
Daniel Veillard781ac8b2003-05-15 22:11:36 +0000322int xmlThrDefLineNumbersDefaultValue(int v);
Daniel Veillardb8478642001-10-12 17:29:10 +0000323
Daniel Veillardb8478642001-10-12 17:29:10 +0000324extern int *__xmlLoadExtDtdDefaultValue(void);
Daniel Veillard0ba59232002-02-10 13:20:39 +0000325#ifdef LIBXML_THREAD_ENABLED
Daniel Veillardb8478642001-10-12 17:29:10 +0000326#define xmlLoadExtDtdDefaultValue \
327(*(__xmlLoadExtDtdDefaultValue()))
328#else
Daniel Veillardd0463562001-10-13 09:15:48 +0000329LIBXML_DLL_IMPORT extern int xmlLoadExtDtdDefaultValue;
Daniel Veillardb8478642001-10-12 17:29:10 +0000330#endif
Daniel Veillard781ac8b2003-05-15 22:11:36 +0000331int xmlThrDefLoadExtDtdDefaultValue(int v);
Daniel Veillardb8478642001-10-12 17:29:10 +0000332
Daniel Veillardb8478642001-10-12 17:29:10 +0000333extern int *__xmlParserDebugEntities(void);
Daniel Veillard0ba59232002-02-10 13:20:39 +0000334#ifdef LIBXML_THREAD_ENABLED
Daniel Veillardb8478642001-10-12 17:29:10 +0000335#define xmlParserDebugEntities \
336(*(__xmlParserDebugEntities()))
337#else
Daniel Veillardd0463562001-10-13 09:15:48 +0000338LIBXML_DLL_IMPORT extern int xmlParserDebugEntities;
Daniel Veillardb8478642001-10-12 17:29:10 +0000339#endif
Daniel Veillard781ac8b2003-05-15 22:11:36 +0000340int xmlThrDefParserDebugEntities(int v);
Daniel Veillardb8478642001-10-12 17:29:10 +0000341
Daniel Veillardb8478642001-10-12 17:29:10 +0000342extern const char * *__xmlParserVersion(void);
Daniel Veillard0ba59232002-02-10 13:20:39 +0000343#ifdef LIBXML_THREAD_ENABLED
Daniel Veillardb8478642001-10-12 17:29:10 +0000344#define xmlParserVersion \
345(*(__xmlParserVersion()))
346#else
Daniel Veillardd0463562001-10-13 09:15:48 +0000347LIBXML_DLL_IMPORT extern const char * xmlParserVersion;
Daniel Veillardb8478642001-10-12 17:29:10 +0000348#endif
349
Daniel Veillardb8478642001-10-12 17:29:10 +0000350extern int *__xmlPedanticParserDefaultValue(void);
Daniel Veillard0ba59232002-02-10 13:20:39 +0000351#ifdef LIBXML_THREAD_ENABLED
Daniel Veillardb8478642001-10-12 17:29:10 +0000352#define xmlPedanticParserDefaultValue \
353(*(__xmlPedanticParserDefaultValue()))
354#else
Daniel Veillardd0463562001-10-13 09:15:48 +0000355LIBXML_DLL_IMPORT extern int xmlPedanticParserDefaultValue;
Daniel Veillardb8478642001-10-12 17:29:10 +0000356#endif
Daniel Veillard781ac8b2003-05-15 22:11:36 +0000357int xmlThrDefPedanticParserDefaultValue(int v);
Daniel Veillardb8478642001-10-12 17:29:10 +0000358
Daniel Veillardb8478642001-10-12 17:29:10 +0000359extern int *__xmlSaveNoEmptyTags(void);
Daniel Veillard0ba59232002-02-10 13:20:39 +0000360#ifdef LIBXML_THREAD_ENABLED
Daniel Veillardb8478642001-10-12 17:29:10 +0000361#define xmlSaveNoEmptyTags \
362(*(__xmlSaveNoEmptyTags()))
363#else
Daniel Veillardd0463562001-10-13 09:15:48 +0000364LIBXML_DLL_IMPORT extern int xmlSaveNoEmptyTags;
Daniel Veillardb8478642001-10-12 17:29:10 +0000365#endif
Daniel Veillard781ac8b2003-05-15 22:11:36 +0000366int xmlThrDefSaveNoEmptyTags(int v);
Daniel Veillardb8478642001-10-12 17:29:10 +0000367
Daniel Veillardb8478642001-10-12 17:29:10 +0000368extern int *__xmlSubstituteEntitiesDefaultValue(void);
Daniel Veillard0ba59232002-02-10 13:20:39 +0000369#ifdef LIBXML_THREAD_ENABLED
Daniel Veillardb8478642001-10-12 17:29:10 +0000370#define xmlSubstituteEntitiesDefaultValue \
371(*(__xmlSubstituteEntitiesDefaultValue()))
372#else
Daniel Veillardd0463562001-10-13 09:15:48 +0000373LIBXML_DLL_IMPORT extern int xmlSubstituteEntitiesDefaultValue;
Daniel Veillardb8478642001-10-12 17:29:10 +0000374#endif
Daniel Veillard781ac8b2003-05-15 22:11:36 +0000375int xmlThrDefSubstituteEntitiesDefaultValue(int v);
Daniel Veillardb8478642001-10-12 17:29:10 +0000376
Daniel Veillard5335dc52003-01-01 20:59:38 +0000377extern xmlRegisterNodeFunc *__xmlRegisterNodeDefaultValue(void);
378#ifdef LIBXML_THREAD_ENABLED
379#define xmlRegisterNodeDefaultValue \
380(*(__xmlRegisterNodeDefaultValue()))
381#else
382LIBXML_DLL_IMPORT extern xmlRegisterNodeFunc xmlRegisterNodeDefaultValue;
383#endif
384
385extern xmlDeregisterNodeFunc *__xmlDeregisterNodeDefaultValue(void);
386#ifdef LIBXML_THREAD_ENABLED
387#define xmlDeregisterNodeDefaultValue \
388(*(__xmlDeregisterNodeDefaultValue()))
389#else
390LIBXML_DLL_IMPORT extern xmlDeregisterNodeFunc xmlDeregisterNodeDefaultValue;
391#endif
392
Daniel Veillardb8478642001-10-12 17:29:10 +0000393#ifdef __cplusplus
394}
395#endif
396
397#endif /* __XML_GLOBALS_H */