30 #include "xsdnode_p.h" 32 #include <gwenhywfar/debug.h> 33 #include <gwenhywfar/misc.h> 56 xsdNode->parent=parent;
59 xsdNode->name=strdup(name);
82 return xsdNode->nodeType;
98 return xsdNode->flags;
130 return xsdNode->parent;
138 return xsdNode->children;
148 newChild->parent=xsdNode;
156 xsdNode->parent=
NULL;
167 oldFn=xsdNode->readFn;
180 oldFn=xsdNode->writeFn;
193 return xsdNode->readFn(xsdNode, xmlNode, db);
205 if (xsdNode->writeFn)
206 return xsdNode->writeFn(xsdNode, xmlNode, db);
void GWEN_XsdNode_SetFlags(GWEN_XSD_NODE *xsdNode, uint32_t fl)
struct GWEN_DB_NODE GWEN_DB_NODE
#define GWEN_INHERIT_FINI(t, element)
void GWEN_XsdNode_List_free(GWEN_XSD_NODE_LIST *l)
uint32_t GWEN_XsdNode_GetFlags(const GWEN_XSD_NODE *xsdNode)
void GWEN_XsdNode_List_Add(GWEN_XSD_NODE *element, GWEN_XSD_NODE_LIST *list)
void GWEN_XsdNode_AddFlags(GWEN_XSD_NODE *xsdNode, uint32_t fl)
GWEN_XSD_NODETYPE GWEN_XsdNode_GetNodeType(const GWEN_XSD_NODE *xsdNode)
#define GWEN_FREE_OBJECT(varname)
void GWEN_XsdNode_free(GWEN_XSD_NODE *xsdNode)
void GWEN_XsdNode_SubFlags(GWEN_XSD_NODE *xsdNode, uint32_t fl)
int GWEN_XsdNode_Read(GWEN_XSD_NODE *xsdNode, GWEN_XMLNODE *xmlNode, GWEN_DB_NODE *db)
GWEN_XSD_NODE * GWEN_XsdNode_GetParent(const GWEN_XSD_NODE *xsdNode)
GWEN_XSD_NODE_LIST * GWEN_XsdNode_GetChildren(const GWEN_XSD_NODE *xsdNode)
#define GWEN_NEW_OBJECT(typ, varname)
GWEN_XSD_NODE * GWEN_XsdNode_new(GWEN_XSD_NODE *parent, GWEN_XSD_NODETYPE t, const char *name)
#define GWEN_INHERIT_INIT(t, element)
struct GWEN_XSD_NODE GWEN_XSD_NODE
#define GWEN_ERROR_NOT_SUPPORTED
int(* GWEN_XSDNODE_WRITE_FN)(GWEN_XSD_NODE *xsdNode, GWEN_XMLNODE *xmlNode, GWEN_DB_NODE *db)
void GWEN_XsdNode_Unlink(GWEN_XSD_NODE *xsdNode)
void GWEN_XsdNode_AddChild(GWEN_XSD_NODE *xsdNode, GWEN_XSD_NODE *newChild)
GWEN_XSDNODE_WRITE_FN GWEN_XsdNode_SetWriteFn(GWEN_XSD_NODE *xsdNode, GWEN_XSDNODE_WRITE_FN fn)
#define GWEN_LIST_INIT(t, element)
int(* GWEN_XSDNODE_READ_FN)(GWEN_XSD_NODE *xsdNode, GWEN_XMLNODE *xmlNode, GWEN_DB_NODE *db)
GWEN_XSDNODE_READ_FN GWEN_XsdNode_SetReadFn(GWEN_XSD_NODE *xsdNode, GWEN_XSDNODE_READ_FN fn)
#define GWEN_LIST_FUNCTIONS(t, pr)
void GWEN_XsdNode_List_Del(GWEN_XSD_NODE *element)
int GWEN_XsdNode_Write(GWEN_XSD_NODE *xsdNode, GWEN_XMLNODE *xmlNode, GWEN_DB_NODE *db)
#define GWEN_LIST_FINI(t, element)
const char * GWEN_XsdNode_GetName(const GWEN_XSD_NODE *xsdNode)
#define GWEN_INHERIT_FUNCTIONS(t)
struct GWEN__XMLNODE GWEN_XMLNODE
GWEN_XSD_NODE_LIST * GWEN_XsdNode_List_new()