25 #ifndef GWENHYWFAR_XML_H
26 #define GWENHYWFAR_XML_H
60 #define GWEN_XML_FLAGS_HANDLE_COMMENTS 0x0001
66 #define GWEN_XML_FLAGS_INDENT 0x0002
73 #define GWEN_XML_FLAGS_HANDLE_OPEN_HTMLTAGS 0x0004
79 #define GWEN_XML_FLAGS_NO_CONDENSE 0x0008
85 #define GWEN_XML_FLAGS_KEEP_CNTRL 0x0010
87 #define GWEN_XML_FLAGS_KEEP_BLANKS 0x0020
89 #define GWEN_XML_FLAGS_SIMPLE 0x0040
94 #define GWEN_XML_FLAGS_HANDLE_HEADERS 0x0080
103 #define GWEN_XML_FLAGS_TOLERANT_ENDTAGS 0x0100
105 #define GWEN_XML_FLAGS_HANDLE_NAMESPACES 0x0200
112 #define GWEN_XML_FLAGS_SGML 0x0400
117 #define GWEN_XML_FLAGS_DEFAULT \
119 GWEN_XML_FLAGS_INDENT | \
120 GWEN_XML_FLAGS_HANDLE_COMMENTS | \
121 GWEN_XML_FLAGS_HANDLE_HEADERS\
133 #define GWEN_XML_PATH_FLAGS_OVERWRITE_VALUES 0x00010000
284 const char *defaultValue);
311 const char *name,
int value);
738 const char *defValue);
760 const char *defValue);
816 const char *defValue);
struct GWEN_DB_NODE GWEN_DB_NODE
struct GWEN_BUFFER GWEN_BUFFER
A dynamically resizeable text buffer.
#define GWEN_LIST_FUNCTION_LIB_DEFS(t, pr, decl)
This file contains some macros concerning lists.
#define GWEN_LIST2_FUNCTION_LIB_DEFS(t, pr, decl)
struct GWEN_SYNCIO GWEN_SYNCIO
GWENHYWFAR_API int GWEN_XMLNode_GetIntValueByPath(GWEN_XMLNODE *n, const char *name, int defValue)
GWENHYWFAR_API int GWEN_XML_ReadFromFastBuffer(GWEN_XML_CONTEXT *ctx, GWEN_FAST_BUFFER *fb)
GWENHYWFAR_API GWEN_XMLNODE * GWEN_XMLNode_FindNextTag(const GWEN_XMLNODE *n, const char *tname, const char *pname, const char *pvalue)
GWENHYWFAR_API void GWEN_XMLNode_RemoveChildren(GWEN_XMLNODE *n)
GWENHYWFAR_API void GWEN_XMLNode_IncUsage(GWEN_XMLNODE *n)
GWENHYWFAR_API int GWEN_XMLContext_ReadFromFile(GWEN_XML_CONTEXT *ctx, const char *fname)
GWENHYWFAR_API void GWEN_XMLNode_SetProperty(GWEN_XMLNODE *n, const char *name, const char *value)
GWENHYWFAR_API int GWEN_XMLNode_ExpandProperties(const GWEN_XMLNODE *tn, GWEN_DB_NODE *dbVars)
GWENHYWFAR_API int GWEN_XMLNode_GlobalizeWithList(GWEN_XMLNODE *n, GWEN_XMLNODE_NAMESPACE_LIST *l, uint32_t *pLastId)
GWENHYWFAR_API void GWEN_XMLNode_DecUsage(GWEN_XMLNODE *n)
struct GWEN_XMLNODE_NAMESPACE GWEN_XMLNODE_NAMESPACE
GWENHYWFAR_API GWEN_XMLNODE * GWEN_XMLNode_GetNodeByXPath(GWEN_XMLNODE *n, const char *path, uint32_t flags)
GWENHYWFAR_API GWEN_XMLNODE_NAMESPACE * GWEN_XMLNode_NameSpace_new(const char *name, const char *url)
GWENHYWFAR_API GWEN_XMLNODE_TYPE GWEN_XMLNode_GetType(const GWEN_XMLNODE *n)
GWENHYWFAR_API void GWEN_XMLNode_free(GWEN_XMLNODE *n)
GWENHYWFAR_API int GWEN_XMLNode_toBuffer(const GWEN_XMLNODE *n, GWEN_BUFFER *buf, uint32_t flags)
GWENHYWFAR_API int GWEN_XMLNode_SetIntValueByPath(GWEN_XMLNODE *n, uint32_t flags, const char *name, int value)
GWENHYWFAR_API const char * GWEN_XMLNode_GetCharValueByPath(GWEN_XMLNODE *n, const char *path, const char *defValue)
GWENHYWFAR_API void GWEN_XMLNode_AddChildrenOnly(GWEN_XMLNODE *n, GWEN_XMLNODE *nn, int copythem)
GWENHYWFAR_API int GWEN_XMLNode_GetIntProperty(const GWEN_XMLNODE *n, const char *name, int defaultValue)
GWENHYWFAR_API GWEN_XMLNODE * GWEN_XMLNode_GetHeader(const GWEN_XMLNODE *n)
GWENHYWFAR_API const char * GWEN_XMLNode_GetLocalizedCharValue(const GWEN_XMLNODE *n, const char *name, const char *defValue)
GWENHYWFAR_API int GWEN_XMLContext_ReadFromString(GWEN_XML_CONTEXT *ctx, const char *text)
GWENHYWFAR_API GWEN_XMLNODE_NAMESPACE * GWEN_XMLNode_FindNameSpaceByName(const GWEN_XMLNODE *n, const char *s)
GWENHYWFAR_API int GWEN_XMLNode_Globalize(GWEN_XMLNODE *n)
GWENHYWFAR_API int GWEN_XMLContext_ReadFromIo(GWEN_XML_CONTEXT *ctx, GWEN_SYNCIO *io)
GWENHYWFAR_API GWEN_XMLNODE * GWEN_XMLNode_dup(const GWEN_XMLNODE *n)
GWENHYWFAR_API int GWEN_XMLNode_NormalizeNameSpaces(GWEN_XMLNODE *n)
GWENHYWFAR_API int GWEN_XMLNode_SetCharValueByPath(GWEN_XMLNODE *n, uint32_t flags, const char *name, const char *value)
GWENHYWFAR_API GWEN_XMLNODE * GWEN_XMLNode_GetFirstTag(const GWEN_XMLNODE *n)
GWENHYWFAR_API int GWEN_XMLNode_StripNamespaces(GWEN_XMLNODE *n)
GWENHYWFAR_API GWEN_XMLNODE * GWEN_XMLNode_GetChild(const GWEN_XMLNODE *n)
GWENHYWFAR_API void GWEN_XMLNode_Path_Dump(GWEN_XMLNODE_PATH *np)
GWENHYWFAR_API void GWEN_XMLNode_SetIntProperty(GWEN_XMLNODE *n, const char *name, int value)
GWENHYWFAR_API const char * GWEN_XMLNode_GetData(const GWEN_XMLNODE *n)
GWENHYWFAR_API void GWEN_XMLNode_Dump(const GWEN_XMLNODE *n, int ind)
GWENHYWFAR_API const char * GWEN_XMLNode_GetNamespace(const GWEN_XMLNODE *n)
GWENHYWFAR_API void GWEN_XMLNode_SetCharValue(GWEN_XMLNODE *n, const char *name, const char *value)
GWENHYWFAR_API void GWEN_XMLNode_SetIntValue(GWEN_XMLNODE *n, const char *name, int value)
GWENHYWFAR_API GWEN_XMLNODE * GWEN_XMLNode_Next(const GWEN_XMLNODE *n)
GWENHYWFAR_API GWEN_XMLNODE_NAMESPACE_LIST * GWEN_XMLNode_GetNameSpaces(const GWEN_XMLNODE *n)
GWENHYWFAR_API int GWEN_XMLNode_Path_Dive(GWEN_XMLNODE_PATH *np, GWEN_XMLNODE *n)
GWENHYWFAR_API GWEN_XMLNODE * GWEN_XMLNode_fromString(const char *s, int len, uint32_t flags)
struct GWEN__XMLNODE GWEN_XMLNODE
GWENHYWFAR_API void GWEN_XMLNode_NameSpace_free(GWEN_XMLNODE_NAMESPACE *ns)
GWENHYWFAR_API uint32_t GWEN_XMLNode_GetUsage(const GWEN_XMLNODE *n)
GWENHYWFAR_API GWEN_XMLNODE * GWEN_XMLNode_FindFirstTag(const GWEN_XMLNODE *n, const char *tname, const char *pname, const char *pvalue)
GWENHYWFAR_API void GWEN_XMLNode_CopyProperties(GWEN_XMLNODE *tn, const GWEN_XMLNODE *sn, int overwrite)
GWENHYWFAR_API void GWEN_XMLNode_freeAll(GWEN_XMLNODE *n)
GWENHYWFAR_API int GWEN_XMLNode_WriteFile(const GWEN_XMLNODE *n, const char *fname, uint32_t flags)
GWENHYWFAR_API GWEN_XMLNODE_PATH * GWEN_XMLNode_Path_new(void)
GWENHYWFAR_API void GWEN_XMLNode_ClearHeaders(GWEN_XMLNODE *root)
GWENHYWFAR_API int GWEN_XML_ReadFile(GWEN_XMLNODE *n, const char *filepath, uint32_t flags)
GWENHYWFAR_API GWEN_XMLNODE_NAMESPACE * GWEN_XMLNode_FindNameSpaceByUrl(const GWEN_XMLNODE *n, const char *s)
GWENHYWFAR_API void GWEN_XMLNode_AddNameSpace(GWEN_XMLNODE *n, const GWEN_XMLNODE_NAMESPACE *ns)
GWENHYWFAR_API GWEN_XMLNODE * GWEN_XMLNode_FindNode(const GWEN_XMLNODE *n, GWEN_XMLNODE_TYPE t, const char *data)
GWENHYWFAR_API const char * GWEN_XMLNode_GetProperty(const GWEN_XMLNODE *n, const char *name, const char *defaultValue)
GWENHYWFAR_API int GWEN_XMLNode_IsChildOf(const GWEN_XMLNODE *parent, const GWEN_XMLNODE *child)
GWENHYWFAR_API void GWEN_XMLNode_AddHeader(GWEN_XMLNODE *root, GWEN_XMLNODE *nh)
GWENHYWFAR_API int GWEN_XMLNode_WriteToStream(const GWEN_XMLNODE *n, GWEN_XML_CONTEXT *ctx, GWEN_SYNCIO *sio)
GWENHYWFAR_API int GWEN_XMLNode_GetIntValue(const GWEN_XMLNODE *n, const char *name, int defValue)
GWENHYWFAR_API void GWEN_XMLNode_Path_free(GWEN_XMLNODE_PATH *np)
GWENHYWFAR_API GWEN_XMLNODE * GWEN_XMLNode_GetParent(const GWEN_XMLNODE *n)
@ GWEN_XMLNodeTypeComment
GWENHYWFAR_API GWEN_XMLNODE * GWEN_XMLNode_new(GWEN_XMLNODE_TYPE t, const char *data)
GWENHYWFAR_API GWEN_XMLNODE_NAMESPACE * GWEN_XMLNode_NameSpace_dup(const GWEN_XMLNODE_NAMESPACE *ns)
GWENHYWFAR_API GWEN_XMLNODE * GWEN_XMLNode_GetNextTag(const GWEN_XMLNODE *n)
GWENHYWFAR_API int GWEN_XMLNode_GetXPath(const GWEN_XMLNODE *n1, const GWEN_XMLNODE *n2, GWEN_BUFFER *nbuf)
GWENHYWFAR_API void GWEN_XMLNode_SetNamespace(GWEN_XMLNODE *n, const char *s)
GWENHYWFAR_API void GWEN_XMLNode_UnlinkChild(GWEN_XMLNODE *n, GWEN_XMLNODE *child)
GWENHYWFAR_API const char * GWEN_XMLNode_GetCharValue(const GWEN_XMLNODE *n, const char *name, const char *defValue)
GWENHYWFAR_API void GWEN_XMLNode_DelHeader(GWEN_XMLNODE *root, GWEN_XMLNODE *nh)
GWENHYWFAR_API GWEN_XMLNODE_PATH * GWEN_XMLNode_Path_dup(const GWEN_XMLNODE_PATH *np)
GWENHYWFAR_API GWEN_XMLNODE * GWEN_XMLNode_Path_Surface(GWEN_XMLNODE_PATH *np)
GWENHYWFAR_API void GWEN_XMLNode_SetData(GWEN_XMLNODE *n, const char *data)
GWENHYWFAR_API const char * GWEN_XMLNode_NameSpace_GetUrl(const GWEN_XMLNODE_NAMESPACE *ns)
GWENHYWFAR_API const char * GWEN_XMLNode_NameSpace_GetName(const GWEN_XMLNODE_NAMESPACE *ns)
GWENHYWFAR_API GWEN_XMLNODE * GWEN_XMLNode_GetNextData(const GWEN_XMLNODE *n)
GWENHYWFAR_API void GWEN_XMLNode_AddChild(GWEN_XMLNODE *n, GWEN_XMLNODE *child)
GWENHYWFAR_API GWEN_XMLNODE * GWEN_XMLNode_GetFirstData(const GWEN_XMLNODE *n)
struct GWEN_XMLNODE_PATH GWEN_XMLNODE_PATH
struct GWEN_XML_CONTEXT GWEN_XML_CONTEXT