31 const GWEN_PARSER_ELEMENT *dReal=eDefinitions;
32 const GWEN_PARSER_ELEMENT *eDefChild=
NULL;
33 GWEN_PARSER_ELEMENT *eDataChild=
NULL;
37 if (GWEN_ParserElement_GetElementType(eDefinitions)==GWEN_ParserElementType_Choice) {
55 eDefChild=GWEN_ParserElement_Tree_GetFirstChild(dReal);
57 eDataChild=GWEN_ParserElement_Tree_GetFirstChild(eData);
66 s=GWEN_ParserElement_GetDbName(dReal);
67 GWEN_ParserElement_SetDbName(eData, s);
75 const GWEN_PARSER_ELEMENT *d;
76 GWEN_PARSER_ELEMENT *e;
88 d?GWEN_ParserElement_GetName(d):
"-?-",
89 GWEN_ParserElementType_toString(GWEN_ParserElement_GetElementType(d)),
90 e?(GWEN_ParserElement_GetName(e)):
"-NULL-",
91 e?(GWEN_ParserElementType_toString(GWEN_ParserElement_GetElementType(e))):
"-NULL-", depth);
97 if ((GWEN_ParserElement_GetMaxOccurs(d)==-1)|| (count<GWEN_ParserElement_GetMaxOccurs(d))) {
101 e?(GWEN_ParserElement_GetName(e)):
"-NULL-",
102 e?(GWEN_ParserElementType_toString(GWEN_ParserElement_GetElementType(e))):
"-NULL-",
106 e=GWEN_ParserElement_Tree_GetNext(e);
110 count, GWEN_ParserElement_GetMaxOccurs(d));
118 if (count<GWEN_ParserElement_GetMinOccurs(d)) {
121 d?GWEN_ParserElement_GetName(d):
"-?-",
122 GWEN_ParserElementType_toString(GWEN_ParserElement_GetElementType(d)),
123 count, GWEN_ParserElement_GetMinOccurs(d), depth);
129 e?(GWEN_ParserElement_GetName(e)):
"-NULL-",
130 e?(GWEN_ParserElementType_toString(GWEN_ParserElement_GetElementType(e))):
"-NULL-", depth);
132 d=GWEN_ParserElement_Tree_GetNext(d);
150 const GWEN_PARSER_ELEMENT *d;
151 GWEN_PARSER_ELEMENT *e;
154 d=GWEN_ParserElement_Tree_GetFirst(tDefinitions);
155 e=GWEN_ParserElement_Tree_GetFirst(tData);
int GWEN_Parser__UpdateElementAndChildren(const GWEN_PARSER_ELEMENT *eDefinitions, GWEN_PARSER_ELEMENT *eData, int depth)
#define DBG_VERBOUS(dbg_logger, format, args...)
int GWEN_Parser_UpdateTree(const GWEN_PARSER_ELEMENT_TREE *tDefinitions, GWEN_PARSER_ELEMENT_TREE *tData)
const GWEN_PARSER_ELEMENT * GWEN_Parser__GetChoice(const GWEN_PARSER_ELEMENT *eDefinitions, const GWEN_PARSER_ELEMENT *eData)
int GWEN_Parser__UpdateSequence(const GWEN_PARSER_ELEMENT *eDefinitions, GWEN_PARSER_ELEMENT *eData, int depth)
#define GWEN_ERROR_BAD_DATA
#define DBG_DEBUG(dbg_logger, format, args...)
int GWEN_Parser__CheckElement(const GWEN_PARSER_ELEMENT *eDefinitions, const GWEN_PARSER_ELEMENT *eData)
#define DBG_INFO(dbg_logger, format, args...)