Skip to content

Instantly share code, notes, and snippets.

@whitten
Forked from jddurand/_xml_1_0_parseEventsb.c
Created March 20, 2016 05:26
Show Gist options
  • Save whitten/cea674b59b93be25aef8 to your computer and use it in GitHub Desktop.
Save whitten/cea674b59b93be25aef8 to your computer and use it in GitHub Desktop.
_xml_1_0_parseEventsb example
/**************************/
/* _xml_1_0_parseEventsb */
/**************************/
static C_INLINE marpaWrapperBool_t _xml_1_0_parseEventsb(void *datavp, marpaWrapper_t *marpaWrapperp, size_t nEventi, marpaWrapperEvent_t *marpaWrapperEventp) {
marpaWrapperBool_t rcb = MARPAWRAPPER_BOOL_TRUE;
xml_1_0_t *xml_1_0p;
marpaXmlLog_t *marpaXmlLogp = NULL;
xml_1_0_symbol_t symboli;
int i;
for (i = 0; i < nEventi; i++) {
/* Per definition all parse events are based on nulling symbols. No need to check marpaWrapperEventp[i].eventTypei */
marpaWrapperSymbol_t *marpaWrapperSymbolp = marpaWrapperEventp[i].marpaWrapperSymbolp;
xml_1_0_symbol_callback_t *marpaWrapperSymbolCallbackp;
if (marpaWrapperSymbol_datavp_getb(marpaWrapperSymbolp, (void **) &marpaWrapperSymbolCallbackp) == MARPAWRAPPER_BOOL_FALSE) {
/* This should never happen, unless marpaWrapperSymbolp is NULL */
continue;
}
/* No need to get more than once our namespace pointer */
if (i == 0) {
xml_1_0p = marpaWrapperSymbolCallbackp->xml_1_0p;
marpaXmlLogp = xml_1_0p->marpaXmlLogp;
}
switch (symboli = marpaWrapperSymbolCallbackp->xml_1_0_symboli) {
case xml_1_0__nullableForParseEvent001:
/* [Rule No 104] "VersionNum ::= _Lex031 _Lex032_many _nullableForParseEvent001 " */
MARPAXML_TRACEX("Event on symbol %s for rule \"%s\"\n", symbolsToString[xml_1_0__nullableForParseEvent001], rulesToString[104]);
break;
case xml_1_0__nullableForParseEvent002:
/* [Rule No 114] "doctypedecl ::= _Lex033 S Name _Gen113_maybe S_maybe _Gen116_maybe _Lex036 _nullableForParseEvent002 " */
MARPAXML_TRACEX("Event on symbol %s for rule \"%s\"\n", symbolsToString[xml_1_0__nullableForParseEvent002], rulesToString[114]);
break;
case xml_1_0__nullableForParseEvent003:
/* [Rule No 115] "DeclSep ::= PEReference _nullableForParseEvent003 " */
MARPAXML_TRACEX("Event on symbol %s for rule \"%s\"\n", symbolsToString[xml_1_0__nullableForParseEvent003], rulesToString[115]);
break;
case xml_1_0__nullableForParseEvent004:
/* [Rule No 121] "markupdecl ::= elementdecl _nullableForParseEvent004 " */
MARPAXML_TRACEX("Event on symbol %s for rule \"%s\"\n", symbolsToString[xml_1_0__nullableForParseEvent004], rulesToString[121]);
break;
case xml_1_0__nullableForParseEvent005:
/* [Rule No 122] "markupdecl ::= AttlistDecl _nullableForParseEvent005 " */
MARPAXML_TRACEX("Event on symbol %s for rule \"%s\"\n", symbolsToString[xml_1_0__nullableForParseEvent005], rulesToString[122]);
break;
case xml_1_0__nullableForParseEvent006:
/* [Rule No 123] "markupdecl ::= EntityDecl _nullableForParseEvent006 " */
MARPAXML_TRACEX("Event on symbol %s for rule \"%s\"\n", symbolsToString[xml_1_0__nullableForParseEvent006], rulesToString[123]);
break;
case xml_1_0__nullableForParseEvent007:
/* [Rule No 124] "markupdecl ::= NotationDecl _nullableForParseEvent007 " */
MARPAXML_TRACEX("Event on symbol %s for rule \"%s\"\n", symbolsToString[xml_1_0__nullableForParseEvent007], rulesToString[124]);
break;
case xml_1_0__nullableForParseEvent008:
/* [Rule No 125] "markupdecl ::= PI _nullableForParseEvent008 " */
MARPAXML_TRACEX("Event on symbol %s for rule \"%s\"\n", symbolsToString[xml_1_0__nullableForParseEvent008], rulesToString[125]);
break;
case xml_1_0__nullableForParseEvent009:
/* [Rule No 126] "markupdecl ::= Comment _nullableForParseEvent009 " */
MARPAXML_TRACEX("Event on symbol %s for rule \"%s\"\n", symbolsToString[xml_1_0__nullableForParseEvent009], rulesToString[126]);
break;
case xml_1_0__nullableForParseEvent010:
/* [Rule No 145] "element ::= STag content ETag _nullableForParseEvent010 " */
MARPAXML_TRACEX("Event on symbol %s for rule \"%s\"\n", symbolsToString[xml_1_0__nullableForParseEvent010], rulesToString[145]);
break;
case xml_1_0__nullableForParseEvent011:
/* [Rule No 148] "STag ::= _Lex040 Name _Gen151_any S_maybe _Lex036 _nullableForParseEvent011 " */
MARPAXML_TRACEX("Event on symbol %s for rule \"%s\"\n", symbolsToString[xml_1_0__nullableForParseEvent011], rulesToString[148]);
break;
case xml_1_0__nullableForParseEvent012:
/* [Rule No 149] "Attribute ::= Name Eq AttValue _nullableForParseEvent012 " */
MARPAXML_TRACEX("Event on symbol %s for rule \"%s\"\n", symbolsToString[xml_1_0__nullableForParseEvent012], rulesToString[149]);
break;
case xml_1_0__nullableForParseEvent013:
/* [Rule No 163] "EmptyElemTag ::= _Lex040 Name _Gen166_any S_maybe _Lex042 _nullableForParseEvent013 " */
MARPAXML_TRACEX("Event on symbol %s for rule \"%s\"\n", symbolsToString[xml_1_0__nullableForParseEvent013], rulesToString[163]);
break;
case xml_1_0__nullableForParseEvent014:
/* [Rule No 223] "DefaultDecl ::= _Gen226 _nullableForParseEvent014 " */
MARPAXML_TRACEX("Event on symbol %s for rule \"%s\"\n", symbolsToString[xml_1_0__nullableForParseEvent014], rulesToString[223]);
break;
case xml_1_0__nullableForParseEvent015:
/* [Rule No 243] "CharRef ::= _Lex073 _Lex074_many _Lex072 _nullableForParseEvent015 " */
MARPAXML_TRACEX("Event on symbol %s for rule \"%s\"\n", symbolsToString[xml_1_0__nullableForParseEvent015], rulesToString[243]);
break;
case xml_1_0__nullableForParseEvent016:
/* [Rule No 246] "EntityRef ::= _Lex075 Name _Lex072 _nullableForParseEvent016 " */
MARPAXML_TRACEX("Event on symbol %s for rule \"%s\"\n", symbolsToString[xml_1_0__nullableForParseEvent016], rulesToString[246]);
break;
case xml_1_0__nullableForParseEvent017:
/* [Rule No 247] "PEReference ::= _Lex076 Name _Lex072 _nullableForParseEvent017 " */
MARPAXML_TRACEX("Event on symbol %s for rule \"%s\"\n", symbolsToString[xml_1_0__nullableForParseEvent017], rulesToString[247]);
break;
default:
break;
}
}
return rcb;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment