Browse Source

- fixed grammar to handle include correctly

development
Andreas Romeyke 2 years ago
parent
commit
72df8ac46e
2 changed files with 335 additions and 257 deletions
  1. +314
    -253
      src/parser/config_dsl.grammar.c
  2. +21
    -4
      src/parser/config_dsl.grammar.peg

+ 314
- 253
src/parser/config_dsl.grammar.c View File

@ -3,7 +3,7 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define YYRULECOUNT 43
#define YYRULECOUNT 46
#ifndef YY_MALLOC
#define YY_MALLOC(C, N) malloc(N)
#endif
@ -272,40 +272,43 @@ YY_LOCAL(void) yySet(yycontext *yy, char *text, int count) { yy->__val[count]=
#define YYACCEPT yyAccept(yy, yythunkpos0)
YY_RULE(int) yy_EscapedPCRE(yycontext *yy); /* 43 */
YY_RULE(int) yy_PCRE(yycontext *yy); /* 42 */
YY_RULE(int) yy_Value(yycontext *yy); /* 41 */
YY_RULE(int) yy_ValueList(yycontext *yy); /* 40 */
YY_RULE(int) yy_Digit(yycontext *yy); /* 39 */
YY_RULE(int) yy_Iccprofile(yycontext *yy); /* 38 */
YY_RULE(int) yy_Datetime(yycontext *yy); /* 37 */
YY_RULE(int) yy_ValueReference(yycontext *yy); /* 36 */
YY_RULE(int) yy_Dot(yycontext *yy); /* 35 */
YY_RULE(int) yy_OptDepends(yycontext *yy); /* 34 */
YY_RULE(int) yy_IfDepends(yycontext *yy); /* 33 */
YY_RULE(int) yy_Space(yycontext *yy); /* 32 */
YY_RULE(int) yy_TagReference(yycontext *yy); /* 31 */
YY_RULE(int) yy_Content(yycontext *yy); /* 30 */
YY_RULE(int) yy_Requirements(yycontext *yy); /* 29 */
YY_RULE(int) yy_Semicolon(yycontext *yy); /* 28 */
YY_RULE(int) yy_Tag(yycontext *yy); /* 27 */
YY_RULE(int) yy_Colon(yycontext *yy); /* 26 */
YY_RULE(int) yy_PrintableAscii(yycontext *yy); /* 25 */
YY_RULE(int) yy_RegEx(yycontext *yy); /* 24 */
YY_RULE(int) yy_NTupel(yycontext *yy); /* 23 */
YY_RULE(int) yy_Number(yycontext *yy); /* 22 */
YY_RULE(int) yy_Only(yycontext *yy); /* 21 */
YY_RULE(int) yy_Range(yycontext *yy); /* 20 */
YY_RULE(int) yy_Any(yycontext *yy); /* 19 */
YY_RULE(int) yy_LogicalOrListElement(yycontext *yy); /* 18 */
YY_RULE(int) yy_LogicalOrClose(yycontext *yy); /* 17 */
YY_RULE(int) yy_LogicalOrList(yycontext *yy); /* 16 */
YY_RULE(int) yy_LogicalOrOpen(yycontext *yy); /* 15 */
YY_RULE(int) yy_LogicalOr(yycontext *yy); /* 14 */
YY_RULE(int) yy_Mode(yycontext *yy); /* 13 */
YY_RULE(int) yy_EscapedPCRE(yycontext *yy); /* 46 */
YY_RULE(int) yy_SpaceLine(yycontext *yy); /* 45 */
YY_RULE(int) yy_PCRE(yycontext *yy); /* 44 */
YY_RULE(int) yy_Value(yycontext *yy); /* 43 */
YY_RULE(int) yy_ValueList(yycontext *yy); /* 42 */
YY_RULE(int) yy_Digit(yycontext *yy); /* 41 */
YY_RULE(int) yy_Iccprofile(yycontext *yy); /* 40 */
YY_RULE(int) yy_Datetime(yycontext *yy); /* 39 */
YY_RULE(int) yy_ValueReference(yycontext *yy); /* 38 */
YY_RULE(int) yy_Dot(yycontext *yy); /* 37 */
YY_RULE(int) yy_OptDepends(yycontext *yy); /* 36 */
YY_RULE(int) yy_IfDepends(yycontext *yy); /* 35 */
YY_RULE(int) yy_Space(yycontext *yy); /* 34 */
YY_RULE(int) yy_TagReference(yycontext *yy); /* 33 */
YY_RULE(int) yy_Content(yycontext *yy); /* 32 */
YY_RULE(int) yy_Requirements(yycontext *yy); /* 31 */
YY_RULE(int) yy_Semicolon(yycontext *yy); /* 30 */
YY_RULE(int) yy_Tag(yycontext *yy); /* 29 */
YY_RULE(int) yy_Colon(yycontext *yy); /* 28 */
YY_RULE(int) yy_PrintableAscii(yycontext *yy); /* 27 */
YY_RULE(int) yy_RegEx(yycontext *yy); /* 26 */
YY_RULE(int) yy_NTupel(yycontext *yy); /* 25 */
YY_RULE(int) yy_Number(yycontext *yy); /* 24 */
YY_RULE(int) yy_Only(yycontext *yy); /* 23 */
YY_RULE(int) yy_Range(yycontext *yy); /* 22 */
YY_RULE(int) yy_Any(yycontext *yy); /* 21 */
YY_RULE(int) yy_LogicalOrListElement(yycontext *yy); /* 20 */
YY_RULE(int) yy_LogicalOrClose(yycontext *yy); /* 19 */
YY_RULE(int) yy_LogicalOrList(yycontext *yy); /* 18 */
YY_RULE(int) yy_LogicalOrOpen(yycontext *yy); /* 17 */
YY_RULE(int) yy_LogicalOr(yycontext *yy); /* 16 */
YY_RULE(int) yy_Mode(yycontext *yy); /* 15 */
YY_RULE(int) yy_Subpath(yycontext *yy); /* 14 */
YY_RULE(int) yy_SlashorBackslash(yycontext *yy); /* 13 */
YY_RULE(int) yy_ClosingBracket(yycontext *yy); /* 12 */
YY_RULE(int) yy_OpenBracket(yycontext *yy); /* 11 */
YY_RULE(int) yy_SpaceLine(yycontext *yy); /* 10 */
YY_RULE(int) yy_Path(yycontext *yy); /* 11 */
YY_RULE(int) yy_OpenBracket(yycontext *yy); /* 10 */
YY_RULE(int) yy_IncludeLine(yycontext *yy); /* 9 */
YY_RULE(int) yy_CommentLine(yycontext *yy); /* 8 */
YY_RULE(int) yy_ModeLine(yycontext *yy); /* 7 */
@ -919,7 +922,7 @@ YY_ACTION(void) yy_1_IncludeLine(yycontext *yy, char *yytext, int yyleng)
#define yythunkpos yy->__thunkpos
yyprintf((stderr, "do yy_1_IncludeLine\n"));
{
set_include ( yytext ); ;
set_include ( yytext ); ;
}
#undef yythunkpos
#undef yypos
@ -965,126 +968,136 @@ YY_RULE(int) yy_EscapedPCRE(yycontext *yy)
yyprintf((stderr, " fail %s @ %s\n", "EscapedPCRE", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_SpaceLine(yycontext *yy)
{
yyprintf((stderr, "%s\n", "SpaceLine"));
l5:;
{ int yypos6= yy->__pos, yythunkpos6= yy->__thunkpos; if (!yy_Space(yy)) goto l6; goto l5;
l6:; yy->__pos= yypos6; yy->__thunkpos= yythunkpos6;
}
yyprintf((stderr, " ok %s @ %s\n", "SpaceLine", yy->__buf+yy->__pos));
return 1;
}
YY_RULE(int) yy_PCRE(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "PCRE"));
{ int yypos5= yy->__pos, yythunkpos5= yy->__thunkpos; if (!yy_EscapedPCRE(yy)) goto l6; goto l5;
l6:; yy->__pos= yypos5; yy->__thunkpos= yythunkpos5; if (!yymatchClass(yy, (unsigned char *)"\377\377\377\377\373\377\377\377\377\377\377\357\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377")) goto l4;
{ int yypos8= yy->__pos, yythunkpos8= yy->__thunkpos; if (!yy_EscapedPCRE(yy)) goto l9; goto l8;
l9:; yy->__pos= yypos8; yy->__thunkpos= yythunkpos8; if (!yymatchClass(yy, (unsigned char *)"\377\377\377\377\373\377\377\377\377\377\377\357\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377")) goto l7;
}
l5:;
l8:;
yyprintf((stderr, " ok %s @ %s\n", "PCRE", yy->__buf+yy->__pos));
return 1;
l4:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l7:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "PCRE", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_Value(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "Value")); if (!yy_Number(yy)) goto l7; yyDo(yy, yy_1_Value, yy->__begin, yy->__end);
yyprintf((stderr, "%s\n", "Value")); if (!yy_Number(yy)) goto l10; yyDo(yy, yy_1_Value, yy->__begin, yy->__end);
yyprintf((stderr, " ok %s @ %s\n", "Value", yy->__buf+yy->__pos));
return 1;
l7:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l10:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "Value", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_ValueList(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "ValueList")); if (!yy_Value(yy)) goto l8;
l9:;
{ int yypos10= yy->__pos, yythunkpos10= yy->__thunkpos; if (!yy_Colon(yy)) goto l10; if (!yy_Value(yy)) goto l10; goto l9;
l10:; yy->__pos= yypos10; yy->__thunkpos= yythunkpos10;
yyprintf((stderr, "%s\n", "ValueList")); if (!yy_Value(yy)) goto l11;
l12:;
{ int yypos13= yy->__pos, yythunkpos13= yy->__thunkpos; if (!yy_Colon(yy)) goto l13; if (!yy_Value(yy)) goto l13; goto l12;
l13:; yy->__pos= yypos13; yy->__thunkpos= yythunkpos13;
}
yyprintf((stderr, " ok %s @ %s\n", "ValueList", yy->__buf+yy->__pos));
return 1;
l8:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l11:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "ValueList", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_Digit(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "Digit")); if (!yymatchClass(yy, (unsigned char *)"\000\000\000\000\000\000\377\003\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000")) goto l11;
yyprintf((stderr, "%s\n", "Digit")); if (!yymatchClass(yy, (unsigned char *)"\000\000\000\000\000\000\377\003\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000")) goto l14;
yyprintf((stderr, " ok %s @ %s\n", "Digit", yy->__buf+yy->__pos));
return 1;
l11:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l14:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "Digit", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_Iccprofile(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "Iccprofile")); if (!yymatchString(yy, "iccprofile")) goto l12;
yyprintf((stderr, "%s\n", "Iccprofile")); if (!yymatchString(yy, "iccprofile")) goto l15;
yyprintf((stderr, " ok %s @ %s\n", "Iccprofile", yy->__buf+yy->__pos));
return 1;
l12:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l15:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "Iccprofile", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_Datetime(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "Datetime")); if (!yymatchString(yy, "datetime")) goto l13;
yyprintf((stderr, "%s\n", "Datetime")); if (!yymatchString(yy, "datetime")) goto l16;
yyprintf((stderr, " ok %s @ %s\n", "Datetime", yy->__buf+yy->__pos));
return 1;
l13:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l16:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "Datetime", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_ValueReference(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "ValueReference"));
{ int yypos15= yy->__pos, yythunkpos15= yy->__thunkpos; if (!yy_Any(yy)) goto l16; yyDo(yy, yy_1_ValueReference, yy->__begin, yy->__end); goto l15;
l16:; yy->__pos= yypos15; yy->__thunkpos= yythunkpos15; if (!yy_Number(yy)) goto l17; yyDo(yy, yy_2_ValueReference, yy->__begin, yy->__end); goto l15;
l17:; yy->__pos= yypos15; yy->__thunkpos= yythunkpos15; if (!yy_RegEx(yy)) goto l18; yyDo(yy, yy_3_ValueReference, yy->__begin, yy->__end); goto l15;
l18:; yy->__pos= yypos15; yy->__thunkpos= yythunkpos15; if (!yy_Range(yy)) goto l19; yyDo(yy, yy_4_ValueReference, yy->__begin, yy->__end); goto l15;
l19:; yy->__pos= yypos15; yy->__thunkpos= yythunkpos15; if (!yy_NTupel(yy)) goto l20; yyDo(yy, yy_5_ValueReference, yy->__begin, yy->__end); goto l15;
l20:; yy->__pos= yypos15; yy->__thunkpos= yythunkpos15; if (!yy_Only(yy)) goto l14; yyDo(yy, yy_6_ValueReference, yy->__begin, yy->__end);
}
l15:;
{ int yypos18= yy->__pos, yythunkpos18= yy->__thunkpos; if (!yy_Any(yy)) goto l19; yyDo(yy, yy_1_ValueReference, yy->__begin, yy->__end); goto l18;
l19:; yy->__pos= yypos18; yy->__thunkpos= yythunkpos18; if (!yy_Number(yy)) goto l20; yyDo(yy, yy_2_ValueReference, yy->__begin, yy->__end); goto l18;
l20:; yy->__pos= yypos18; yy->__thunkpos= yythunkpos18; if (!yy_RegEx(yy)) goto l21; yyDo(yy, yy_3_ValueReference, yy->__begin, yy->__end); goto l18;
l21:; yy->__pos= yypos18; yy->__thunkpos= yythunkpos18; if (!yy_Range(yy)) goto l22; yyDo(yy, yy_4_ValueReference, yy->__begin, yy->__end); goto l18;
l22:; yy->__pos= yypos18; yy->__thunkpos= yythunkpos18; if (!yy_NTupel(yy)) goto l23; yyDo(yy, yy_5_ValueReference, yy->__begin, yy->__end); goto l18;
l23:; yy->__pos= yypos18; yy->__thunkpos= yythunkpos18; if (!yy_Only(yy)) goto l17; yyDo(yy, yy_6_ValueReference, yy->__begin, yy->__end);
}
l18:;
yyprintf((stderr, " ok %s @ %s\n", "ValueReference", yy->__buf+yy->__pos));
return 1;
l14:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l17:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "ValueReference", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_Dot(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "Dot")); if (!yymatchChar(yy, '.')) goto l21;
l22:;
{ int yypos23= yy->__pos, yythunkpos23= yy->__thunkpos; if (!yy_Space(yy)) goto l23; goto l22;
l23:; yy->__pos= yypos23; yy->__thunkpos= yythunkpos23;
yyprintf((stderr, "%s\n", "Dot")); if (!yymatchChar(yy, '.')) goto l24;
l25:;
{ int yypos26= yy->__pos, yythunkpos26= yy->__thunkpos; if (!yy_Space(yy)) goto l26; goto l25;
l26:; yy->__pos= yypos26; yy->__thunkpos= yythunkpos26;
}
yyprintf((stderr, " ok %s @ %s\n", "Dot", yy->__buf+yy->__pos));
return 1;
l21:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l24:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "Dot", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_OptDepends(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "OptDepends")); if (!yymatchString(yy, "optdepends")) goto l24; if (!yy_OpenBracket(yy)) goto l24; if (!yy_TagReference(yy)) goto l24; if (!yy_Dot(yy)) goto l24; if (!yy_ValueReference(yy)) goto l24; if (!yy_ClosingBracket(yy)) goto l24;
yyprintf((stderr, "%s\n", "OptDepends")); if (!yymatchString(yy, "optdepends")) goto l27; if (!yy_OpenBracket(yy)) goto l27; if (!yy_TagReference(yy)) goto l27; if (!yy_Dot(yy)) goto l27; if (!yy_ValueReference(yy)) goto l27; if (!yy_ClosingBracket(yy)) goto l27;
yyprintf((stderr, " ok %s @ %s\n", "OptDepends", yy->__buf+yy->__pos));
return 1;
l24:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l27:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "OptDepends", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_IfDepends(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "IfDepends")); if (!yymatchString(yy, "depends")) goto l25; if (!yy_OpenBracket(yy)) goto l25; if (!yy_TagReference(yy)) goto l25; if (!yy_Dot(yy)) goto l25; if (!yy_ValueReference(yy)) goto l25; if (!yy_ClosingBracket(yy)) goto l25;
yyprintf((stderr, "%s\n", "IfDepends")); if (!yymatchString(yy, "depends")) goto l28; if (!yy_OpenBracket(yy)) goto l28; if (!yy_TagReference(yy)) goto l28; if (!yy_Dot(yy)) goto l28; if (!yy_ValueReference(yy)) goto l28; if (!yy_ClosingBracket(yy)) goto l28;
yyprintf((stderr, " ok %s @ %s\n", "IfDepends", yy->__buf+yy->__pos));
return 1;
l25:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l28:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "IfDepends", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_Space(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "Space"));
{ int yypos27= yy->__pos, yythunkpos27= yy->__thunkpos; if (!yymatchChar(yy, ' ')) goto l28; goto l27;
l28:; yy->__pos= yypos27; yy->__thunkpos= yythunkpos27; if (!yymatchChar(yy, '\t')) goto l26;
{ int yypos30= yy->__pos, yythunkpos30= yy->__thunkpos; if (!yymatchChar(yy, ' ')) goto l31; goto l30;
l31:; yy->__pos= yypos30; yy->__thunkpos= yythunkpos30; if (!yymatchChar(yy, '\t')) goto l29;
}
l27:;
l30:;
yyprintf((stderr, " ok %s @ %s\n", "Space", yy->__buf+yy->__pos));
return 1;
l26:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l29:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "Space", yy->__buf+yy->__pos));
return 0;
}
@ -1093,66 +1106,66 @@ YY_RULE(int) yy_TagReference(yycontext *yy)
yyprintf((stderr, "%s\n", "TagReference")); yyText(yy, yy->__begin, yy->__end); {
#define yytext yy->__text
#define yyleng yy->__textlen
if (!(YY_BEGIN)) goto l29;
if (!(YY_BEGIN)) goto l32;
#undef yytext
#undef yyleng
} if (!yy_Number(yy)) goto l29; yyText(yy, yy->__begin, yy->__end); {
} if (!yy_Number(yy)) goto l32; yyText(yy, yy->__begin, yy->__end); {
#define yytext yy->__text
#define yyleng yy->__textlen
if (!(YY_END)) goto l29;
if (!(YY_END)) goto l32;
#undef yytext
#undef yyleng
} yyDo(yy, yy_1_TagReference, yy->__begin, yy->__end);
yyprintf((stderr, " ok %s @ %s\n", "TagReference", yy->__buf+yy->__pos));
return 1;
l29:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l32:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "TagReference", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_Content(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "Content"));
{ int yypos31= yy->__pos, yythunkpos31= yy->__thunkpos; if (!yy_Any(yy)) goto l32; yyDo(yy, yy_1_Content, yy->__begin, yy->__end); goto l31;
l32:; yy->__pos= yypos31; yy->__thunkpos= yythunkpos31; if (!yy_Range(yy)) goto l33; yyDo(yy, yy_2_Content, yy->__begin, yy->__end); goto l31;
l33:; yy->__pos= yypos31; yy->__thunkpos= yythunkpos31; if (!yy_Only(yy)) goto l34; yyDo(yy, yy_3_Content, yy->__begin, yy->__end); goto l31;
l34:; yy->__pos= yypos31; yy->__thunkpos= yythunkpos31; if (!yy_NTupel(yy)) goto l35; yyDo(yy, yy_4_Content, yy->__begin, yy->__end); goto l31;
l35:; yy->__pos= yypos31; yy->__thunkpos= yythunkpos31; if (!yy_RegEx(yy)) goto l36; yyDo(yy, yy_5_Content, yy->__begin, yy->__end); goto l31;
l36:; yy->__pos= yypos31; yy->__thunkpos= yythunkpos31; if (!yy_PrintableAscii(yy)) goto l37; yyDo(yy, yy_6_Content, yy->__begin, yy->__end); goto l31;
l37:; yy->__pos= yypos31; yy->__thunkpos= yythunkpos31; if (!yy_Datetime(yy)) goto l38; yyDo(yy, yy_7_Content, yy->__begin, yy->__end); goto l31;
l38:; yy->__pos= yypos31; yy->__thunkpos= yythunkpos31; if (!yy_Iccprofile(yy)) goto l30; yyDo(yy, yy_8_Content, yy->__begin, yy->__end);
}
l31:;
{ int yypos34= yy->__pos, yythunkpos34= yy->__thunkpos; if (!yy_Any(yy)) goto l35; yyDo(yy, yy_1_Content, yy->__begin, yy->__end); goto l34;
l35:; yy->__pos= yypos34; yy->__thunkpos= yythunkpos34; if (!yy_Range(yy)) goto l36; yyDo(yy, yy_2_Content, yy->__begin, yy->__end); goto l34;
l36:; yy->__pos= yypos34; yy->__thunkpos= yythunkpos34; if (!yy_Only(yy)) goto l37; yyDo(yy, yy_3_Content, yy->__begin, yy->__end); goto l34;
l37:; yy->__pos= yypos34; yy->__thunkpos= yythunkpos34; if (!yy_NTupel(yy)) goto l38; yyDo(yy, yy_4_Content, yy->__begin, yy->__end); goto l34;
l38:; yy->__pos= yypos34; yy->__thunkpos= yythunkpos34; if (!yy_RegEx(yy)) goto l39; yyDo(yy, yy_5_Content, yy->__begin, yy->__end); goto l34;
l39:; yy->__pos= yypos34; yy->__thunkpos= yythunkpos34; if (!yy_PrintableAscii(yy)) goto l40; yyDo(yy, yy_6_Content, yy->__begin, yy->__end); goto l34;
l40:; yy->__pos= yypos34; yy->__thunkpos= yythunkpos34; if (!yy_Datetime(yy)) goto l41; yyDo(yy, yy_7_Content, yy->__begin, yy->__end); goto l34;
l41:; yy->__pos= yypos34; yy->__thunkpos= yythunkpos34; if (!yy_Iccprofile(yy)) goto l33; yyDo(yy, yy_8_Content, yy->__begin, yy->__end);
}
l34:;
yyprintf((stderr, " ok %s @ %s\n", "Content", yy->__buf+yy->__pos));
return 1;
l30:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l33:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "Content", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_Requirements(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "Requirements"));
{ int yypos40= yy->__pos, yythunkpos40= yy->__thunkpos; if (!yymatchString(yy, "mandatory")) goto l41; yyDo(yy, yy_1_Requirements, yy->__begin, yy->__end); goto l40;
l41:; yy->__pos= yypos40; yy->__thunkpos= yythunkpos40; if (!yy_IfDepends(yy)) goto l42; yyDo(yy, yy_2_Requirements, yy->__begin, yy->__end); goto l40;
l42:; yy->__pos= yypos40; yy->__thunkpos= yythunkpos40; if (!yy_OptDepends(yy)) goto l43; yyDo(yy, yy_3_Requirements, yy->__begin, yy->__end); goto l40;
l43:; yy->__pos= yypos40; yy->__thunkpos= yythunkpos40; if (!yymatchString(yy, "optional")) goto l39; yyDo(yy, yy_4_Requirements, yy->__begin, yy->__end);
{ int yypos43= yy->__pos, yythunkpos43= yy->__thunkpos; if (!yymatchString(yy, "mandatory")) goto l44; yyDo(yy, yy_1_Requirements, yy->__begin, yy->__end); goto l43;
l44:; yy->__pos= yypos43; yy->__thunkpos= yythunkpos43; if (!yy_IfDepends(yy)) goto l45; yyDo(yy, yy_2_Requirements, yy->__begin, yy->__end); goto l43;
l45:; yy->__pos= yypos43; yy->__thunkpos= yythunkpos43; if (!yy_OptDepends(yy)) goto l46; yyDo(yy, yy_3_Requirements, yy->__begin, yy->__end); goto l43;
l46:; yy->__pos= yypos43; yy->__thunkpos= yythunkpos43; if (!yymatchString(yy, "optional")) goto l42; yyDo(yy, yy_4_Requirements, yy->__begin, yy->__end);
}
l40:;
l43:;
yyprintf((stderr, " ok %s @ %s\n", "Requirements", yy->__buf+yy->__pos));
return 1;
l39:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l42:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "Requirements", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_Semicolon(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "Semicolon")); if (!yymatchChar(yy, ';')) goto l44;
l45:;
{ int yypos46= yy->__pos, yythunkpos46= yy->__thunkpos; if (!yy_Space(yy)) goto l46; goto l45;
l46:; yy->__pos= yypos46; yy->__thunkpos= yythunkpos46;
yyprintf((stderr, "%s\n", "Semicolon")); if (!yymatchChar(yy, ';')) goto l47;
l48:;
{ int yypos49= yy->__pos, yythunkpos49= yy->__thunkpos; if (!yy_Space(yy)) goto l49; goto l48;
l49:; yy->__pos= yypos49; yy->__thunkpos= yythunkpos49;
}
yyprintf((stderr, " ok %s @ %s\n", "Semicolon", yy->__buf+yy->__pos));
return 1;
l44:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l47:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "Semicolon", yy->__buf+yy->__pos));
return 0;
}
@ -1161,421 +1174,469 @@ YY_RULE(int) yy_Tag(yycontext *yy)
yyprintf((stderr, "%s\n", "Tag")); yyText(yy, yy->__begin, yy->__end); {
#define yytext yy->__text
#define yyleng yy->__textlen
if (!(YY_BEGIN)) goto l47;
if (!(YY_BEGIN)) goto l50;
#undef yytext
#undef yyleng
} if (!yy_Number(yy)) goto l47; yyText(yy, yy->__begin, yy->__end); {
} if (!yy_Number(yy)) goto l50; yyText(yy, yy->__begin, yy->__end); {
#define yytext yy->__text
#define yyleng yy->__textlen
if (!(YY_END)) goto l47;
if (!(YY_END)) goto l50;
#undef yytext
#undef yyleng
} yyDo(yy, yy_1_Tag, yy->__begin, yy->__end);
yyprintf((stderr, " ok %s @ %s\n", "Tag", yy->__buf+yy->__pos));
return 1;
l47:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l50:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "Tag", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_Colon(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "Colon")); if (!yymatchChar(yy, ',')) goto l48;
l49:;
{ int yypos50= yy->__pos, yythunkpos50= yy->__thunkpos; if (!yy_Space(yy)) goto l50; goto l49;
l50:; yy->__pos= yypos50; yy->__thunkpos= yythunkpos50;
yyprintf((stderr, "%s\n", "Colon")); if (!yymatchChar(yy, ',')) goto l51;
l52:;
{ int yypos53= yy->__pos, yythunkpos53= yy->__thunkpos; if (!yy_Space(yy)) goto l53; goto l52;
l53:; yy->__pos= yypos53; yy->__thunkpos= yythunkpos53;
}
yyprintf((stderr, " ok %s @ %s\n", "Colon", yy->__buf+yy->__pos));
return 1;
l48:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l51:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "Colon", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_PrintableAscii(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "PrintableAscii")); if (!yymatchString(yy, "printascii")) goto l51;
yyprintf((stderr, "%s\n", "PrintableAscii")); if (!yymatchString(yy, "printascii")) goto l54;
yyprintf((stderr, " ok %s @ %s\n", "PrintableAscii", yy->__buf+yy->__pos));
return 1;
l51:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l54:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "PrintableAscii", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_RegEx(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "RegEx")); if (!yymatchString(yy, "regex")) goto l52; if (!yy_OpenBracket(yy)) goto l52; if (!yymatchChar(yy, '"')) goto l52; yyText(yy, yy->__begin, yy->__end); {
yyprintf((stderr, "%s\n", "RegEx")); if (!yymatchString(yy, "regex")) goto l55; if (!yy_OpenBracket(yy)) goto l55; if (!yymatchChar(yy, '"')) goto l55; yyText(yy, yy->__begin, yy->__end); {
#define yytext yy->__text
#define yyleng yy->__textlen
if (!(YY_BEGIN)) goto l52;
if (!(YY_BEGIN)) goto l55;
#undef yytext
#undef yyleng
}
l53:;
{ int yypos54= yy->__pos, yythunkpos54= yy->__thunkpos; if (!yy_PCRE(yy)) goto l54; goto l53;
l54:; yy->__pos= yypos54; yy->__thunkpos= yythunkpos54;
l56:;
{ int yypos57= yy->__pos, yythunkpos57= yy->__thunkpos; if (!yy_PCRE(yy)) goto l57; goto l56;
l57:; yy->__pos= yypos57; yy->__thunkpos= yythunkpos57;
} yyText(yy, yy->__begin, yy->__end); {
#define yytext yy->__text
#define yyleng yy->__textlen
if (!(YY_END)) goto l52;
if (!(YY_END)) goto l55;
#undef yytext
#undef yyleng
} if (!yymatchChar(yy, '"')) goto l52; if (!yy_ClosingBracket(yy)) goto l52; yyDo(yy, yy_1_RegEx, yy->__begin, yy->__end);
} if (!yymatchChar(yy, '"')) goto l55; if (!yy_ClosingBracket(yy)) goto l55; yyDo(yy, yy_1_RegEx, yy->__begin, yy->__end);
yyprintf((stderr, " ok %s @ %s\n", "RegEx", yy->__buf+yy->__pos));
return 1;
l52:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l55:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "RegEx", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_NTupel(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "NTupel")); if (!yymatchString(yy, "ntupel")) goto l55; if (!yy_OpenBracket(yy)) goto l55; if (!yy_ValueList(yy)) goto l55; if (!yy_ClosingBracket(yy)) goto l55; yyDo(yy, yy_1_NTupel, yy->__begin, yy->__end);
yyprintf((stderr, "%s\n", "NTupel")); if (!yymatchString(yy, "ntupel")) goto l58; if (!yy_OpenBracket(yy)) goto l58; if (!yy_ValueList(yy)) goto l58; if (!yy_ClosingBracket(yy)) goto l58; yyDo(yy, yy_1_NTupel, yy->__begin, yy->__end);
yyprintf((stderr, " ok %s @ %s\n", "NTupel", yy->__buf+yy->__pos));
return 1;
l55:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l58:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "NTupel", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_Number(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "Number"));
{ int yypos57= yy->__pos, yythunkpos57= yy->__thunkpos; yyText(yy, yy->__begin, yy->__end); {
{ int yypos60= yy->__pos, yythunkpos60= yy->__thunkpos; yyText(yy, yy->__begin, yy->__end); {
#define yytext yy->__text
#define yyleng yy->__textlen
if (!(YY_BEGIN)) goto l58;
if (!(YY_BEGIN)) goto l61;
#undef yytext
#undef yyleng
} if (!yymatchString(yy, "0x")) goto l58; if (!yymatchClass(yy, (unsigned char *)"\000\000\000\000\000\000\377\003\000\000\000\000\176\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000")) goto l58;
l59:;
{ int yypos60= yy->__pos, yythunkpos60= yy->__thunkpos; if (!yymatchClass(yy, (unsigned char *)"\000\000\000\000\000\000\377\003\000\000\000\000\176\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000")) goto l60; goto l59;
l60:; yy->__pos= yypos60; yy->__thunkpos= yythunkpos60;
} if (!yymatchString(yy, "0x")) goto l61; if (!yymatchClass(yy, (unsigned char *)"\000\000\000\000\000\000\377\003\000\000\000\000\176\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000")) goto l61;
l62:;
{ int yypos63= yy->__pos, yythunkpos63= yy->__thunkpos; if (!yymatchClass(yy, (unsigned char *)"\000\000\000\000\000\000\377\003\000\000\000\000\176\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000")) goto l63; goto l62;
l63:; yy->__pos= yypos63; yy->__thunkpos= yythunkpos63;
} yyText(yy, yy->__begin, yy->__end); {
#define yytext yy->__text
#define yyleng yy->__textlen
if (!(YY_END)) goto l58;
if (!(YY_END)) goto l61;
#undef yytext
#undef yyleng
} yyDo(yy, yy_1_Number, yy->__begin, yy->__end); goto l57;
l58:; yy->__pos= yypos57; yy->__thunkpos= yythunkpos57; if (!yymatchString(yy, "2^")) goto l61; yyText(yy, yy->__begin, yy->__end); {
} yyDo(yy, yy_1_Number, yy->__begin, yy->__end); goto l60;
l61:; yy->__pos= yypos60; yy->__thunkpos= yythunkpos60; if (!yymatchString(yy, "2^")) goto l64; yyText(yy, yy->__begin, yy->__end); {
#define yytext yy->__text
#define yyleng yy->__textlen
if (!(YY_BEGIN)) goto l61;
if (!(YY_BEGIN)) goto l64;
#undef yytext
#undef yyleng
} if (!yy_Digit(yy)) goto l61;
l62:;
{ int yypos63= yy->__pos, yythunkpos63= yy->__thunkpos; if (!yy_Digit(yy)) goto l63; goto l62;
l63:; yy->__pos= yypos63; yy->__thunkpos= yythunkpos63;
} if (!yy_Digit(yy)) goto l64;
l65:;
{ int yypos66= yy->__pos, yythunkpos66= yy->__thunkpos; if (!yy_Digit(yy)) goto l66; goto l65;
l66:; yy->__pos= yypos66; yy->__thunkpos= yythunkpos66;
} yyText(yy, yy->__begin, yy->__end); {
#define yytext yy->__text
#define yyleng yy->__textlen
if (!(YY_END)) goto l61;
if (!(YY_END)) goto l64;
#undef yytext
#undef yyleng
} yyDo(yy, yy_2_Number, yy->__begin, yy->__end); goto l57;
l61:; yy->__pos= yypos57; yy->__thunkpos= yythunkpos57; yyText(yy, yy->__begin, yy->__end); {
} yyDo(yy, yy_2_Number, yy->__begin, yy->__end); goto l60;
l64:; yy->__pos= yypos60; yy->__thunkpos= yythunkpos60; yyText(yy, yy->__begin, yy->__end); {
#define yytext yy->__text
#define yyleng yy->__textlen
if (!(YY_BEGIN)) goto l56;
if (!(YY_BEGIN)) goto l59;
#undef yytext
#undef yyleng
} if (!yy_Digit(yy)) goto l56;
l64:;
{ int yypos65= yy->__pos, yythunkpos65= yy->__thunkpos; if (!yy_Digit(yy)) goto l65; goto l64;
l65:; yy->__pos= yypos65; yy->__thunkpos= yythunkpos65;
} if (!yy_Digit(yy)) goto l59;
l67:;
{ int yypos68= yy->__pos, yythunkpos68= yy->__thunkpos; if (!yy_Digit(yy)) goto l68; goto l67;
l68:; yy->__pos= yypos68; yy->__thunkpos= yythunkpos68;
} yyText(yy, yy->__begin, yy->__end); {
#define yytext yy->__text
#define yyleng yy->__textlen
if (!(YY_END)) goto l56;
if (!(YY_END)) goto l59;
#undef yytext
#undef yyleng
} yyDo(yy, yy_3_Number, yy->__begin, yy->__end);
}
l57:;
l60:;
yyprintf((stderr, " ok %s @ %s\n", "Number", yy->__buf+yy->__pos));
return 1;
l56:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l59:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "Number", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_Only(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "Only")); if (!yymatchString(yy, "only")) goto l66; if (!yy_OpenBracket(yy)) goto l66; if (!yy_Number(yy)) goto l66; if (!yy_ClosingBracket(yy)) goto l66; yyDo(yy, yy_1_Only, yy->__begin, yy->__end);
yyprintf((stderr, "%s\n", "Only")); if (!yymatchString(yy, "only")) goto l69; if (!yy_OpenBracket(yy)) goto l69; if (!yy_Number(yy)) goto l69; if (!yy_ClosingBracket(yy)) goto l69; yyDo(yy, yy_1_Only, yy->__begin, yy->__end);
yyprintf((stderr, " ok %s @ %s\n", "Only", yy->__buf+yy->__pos));
return 1;
l66:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l69:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "Only", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_Range(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "Range")); if (!yymatchString(yy, "range")) goto l67; if (!yy_OpenBracket(yy)) goto l67; if (!yy_Number(yy)) goto l67; if (!yy_Colon(yy)) goto l67; if (!yy_Number(yy)) goto l67; if (!yy_ClosingBracket(yy)) goto l67;
yyprintf((stderr, "%s\n", "Range")); if (!yymatchString(yy, "range")) goto l70; if (!yy_OpenBracket(yy)) goto l70; if (!yy_Number(yy)) goto l70; if (!yy_Colon(yy)) goto l70; if (!yy_Number(yy)) goto l70; if (!yy_ClosingBracket(yy)) goto l70;
yyprintf((stderr, " ok %s @ %s\n", "Range", yy->__buf+yy->__pos));
return 1;
l67:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l70:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "Range", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_Any(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "Any")); if (!yymatchString(yy, "any")) goto l68;
yyprintf((stderr, "%s\n", "Any")); if (!yymatchString(yy, "any")) goto l71;
yyprintf((stderr, " ok %s @ %s\n", "Any", yy->__buf+yy->__pos));
return 1;
l68:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l71:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "Any", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_LogicalOrListElement(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "LogicalOrListElement"));
{ int yypos70= yy->__pos, yythunkpos70= yy->__thunkpos; if (!yy_Any(yy)) goto l71; yyDo(yy, yy_1_LogicalOrListElement, yy->__begin, yy->__end); goto l70;
l71:; yy->__pos= yypos70; yy->__thunkpos= yythunkpos70; if (!yy_Range(yy)) goto l72; yyDo(yy, yy_2_LogicalOrListElement, yy->__begin, yy->__end); goto l70;
l72:; yy->__pos= yypos70; yy->__thunkpos= yythunkpos70; if (!yy_Only(yy)) goto l73; yyDo(yy, yy_3_LogicalOrListElement, yy->__begin, yy->__end); goto l70;
l73:; yy->__pos= yypos70; yy->__thunkpos= yythunkpos70; if (!yy_Number(yy)) goto l74; yyDo(yy, yy_4_LogicalOrListElement, yy->__begin, yy->__end); goto l70;
l74:; yy->__pos= yypos70; yy->__thunkpos= yythunkpos70; if (!yy_NTupel(yy)) goto l75; yyDo(yy, yy_5_LogicalOrListElement, yy->__begin, yy->__end); goto l70;
l75:; yy->__pos= yypos70; yy->__thunkpos= yythunkpos70; if (!yy_RegEx(yy)) goto l76; yyDo(yy, yy_6_LogicalOrListElement, yy->__begin, yy->__end); goto l70;
l76:; yy->__pos= yypos70; yy->__thunkpos= yythunkpos70; if (!yy_PrintableAscii(yy)) goto l69; yyDo(yy, yy_7_LogicalOrListElement, yy->__begin, yy->__end);
}
l70:;
{ int yypos73= yy->__pos, yythunkpos73= yy->__thunkpos; if (!yy_Any(yy)) goto l74; yyDo(yy, yy_1_LogicalOrListElement, yy->__begin, yy->__end); goto l73;
l74:; yy->__pos= yypos73; yy->__thunkpos= yythunkpos73; if (!yy_Range(yy)) goto l75; yyDo(yy, yy_2_LogicalOrListElement, yy->__begin, yy->__end); goto l73;
l75:; yy->__pos= yypos73; yy->__thunkpos= yythunkpos73; if (!yy_Only(yy)) goto l76; yyDo(yy, yy_3_LogicalOrListElement, yy->__begin, yy->__end); goto l73;
l76:; yy->__pos= yypos73; yy->__thunkpos= yythunkpos73; if (!yy_Number(yy)) goto l77; yyDo(yy, yy_4_LogicalOrListElement, yy->__begin, yy->__end); goto l73;
l77:; yy->__pos= yypos73; yy->__thunkpos= yythunkpos73; if (!yy_NTupel(yy)) goto l78; yyDo(yy, yy_5_LogicalOrListElement, yy->__begin, yy->__end); goto l73;
l78:; yy->__pos= yypos73; yy->__thunkpos= yythunkpos73; if (!yy_RegEx(yy)) goto l79; yyDo(yy, yy_6_LogicalOrListElement, yy->__begin, yy->__end); goto l73;
l79:; yy->__pos= yypos73; yy->__thunkpos= yythunkpos73; if (!yy_PrintableAscii(yy)) goto l72; yyDo(yy, yy_7_LogicalOrListElement, yy->__begin, yy->__end);
}
l73:;
yyprintf((stderr, " ok %s @ %s\n", "LogicalOrListElement", yy->__buf+yy->__pos));
return 1;
l69:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l72:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "LogicalOrListElement", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_LogicalOrClose(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "LogicalOrClose")); if (!yy_ClosingBracket(yy)) goto l77; yyDo(yy, yy_1_LogicalOrClose, yy->__begin, yy->__end);
yyprintf((stderr, "%s\n", "LogicalOrClose")); if (!yy_ClosingBracket(yy)) goto l80; yyDo(yy, yy_1_LogicalOrClose, yy->__begin, yy->__end);
yyprintf((stderr, " ok %s @ %s\n", "LogicalOrClose", yy->__buf+yy->__pos));
return 1;
l77:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l80:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "LogicalOrClose", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_LogicalOrList(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "LogicalOrList")); if (!yy_LogicalOrListElement(yy)) goto l78;
l79:;
{ int yypos80= yy->__pos, yythunkpos80= yy->__thunkpos; if (!yy_Colon(yy)) goto l80; if (!yy_LogicalOrListElement(yy)) goto l80; goto l79;
l80:; yy->__pos= yypos80; yy->__thunkpos= yythunkpos80;
yyprintf((stderr, "%s\n", "LogicalOrList")); if (!yy_LogicalOrListElement(yy)) goto l81;
l82:;
{ int yypos83= yy->__pos, yythunkpos83= yy->__thunkpos; if (!yy_Colon(yy)) goto l83; if (!yy_LogicalOrListElement(yy)) goto l83; goto l82;
l83:; yy->__pos= yypos83; yy->__thunkpos= yythunkpos83;
}
yyprintf((stderr, " ok %s @ %s\n", "LogicalOrList", yy->__buf+yy->__pos));
return 1;
l78:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l81:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "LogicalOrList", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_LogicalOrOpen(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "LogicalOrOpen")); if (!yy_OpenBracket(yy)) goto l81; yyDo(yy, yy_1_LogicalOrOpen, yy->__begin, yy->__end);
yyprintf((stderr, "%s\n", "LogicalOrOpen")); if (!yy_OpenBracket(yy)) goto l84; yyDo(yy, yy_1_LogicalOrOpen, yy->__begin, yy->__end);
yyprintf((stderr, " ok %s @ %s\n", "LogicalOrOpen", yy->__buf+yy->__pos));
return 1;
l81:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l84:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "LogicalOrOpen", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_LogicalOr(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "LogicalOr")); if (!yymatchString(yy, "logical_or")) goto l82; if (!yy_LogicalOrOpen(yy)) goto l82; if (!yy_LogicalOrList(yy)) goto l82; if (!yy_LogicalOrClose(yy)) goto l82;
yyprintf((stderr, "%s\n", "LogicalOr")); if (!yymatchString(yy, "logical_or")) goto l85; if (!yy_LogicalOrOpen(yy)) goto l85; if (!yy_LogicalOrList(yy)) goto l85; if (!yy_LogicalOrClose(yy)) goto l85;
yyprintf((stderr, " ok %s @ %s\n", "LogicalOr", yy->__buf+yy->__pos));
return 1;
l82:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l85:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "LogicalOr", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_Mode(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "Mode"));
{ int yypos84= yy->__pos, yythunkpos84= yy->__thunkpos; if (!yymatchString(yy, "baseline")) goto l85; yyDo(yy, yy_1_Mode, yy->__begin, yy->__end); goto l84;
l85:; yy->__pos= yypos84; yy->__thunkpos= yythunkpos84; if (!yymatchString(yy, "enable_type_checks")) goto l86; yyDo(yy, yy_2_Mode, yy->__begin, yy->__end); goto l84;
l86:; yy->__pos= yypos84; yy->__thunkpos= yythunkpos84; if (!yymatchString(yy, "enable_offset_checks")) goto l87; yyDo(yy, yy_3_Mode, yy->__begin, yy->__end); goto l84;
l87:; yy->__pos= yypos84; yy->__thunkpos= yythunkpos84; if (!yymatchString(yy, "enable_ifd_checks")) goto l88; yyDo(yy, yy_4_Mode, yy->__begin, yy->__end); goto l84;
l88:; yy->__pos= yypos84; yy->__thunkpos= yythunkpos84; if (!yymatchString(yy, "enable_deep_geotiff_checks")) goto l89; yyDo(yy, yy_5_Mode, yy->__begin, yy->__end); goto l84;
l89:; yy->__pos= yypos84; yy->__thunkpos= yythunkpos84; if (!yymatchString(yy, "enhanced")) goto l83;
}
l84:;
{ int yypos87= yy->__pos, yythunkpos87= yy->__thunkpos; if (!yymatchString(yy, "baseline")) goto l88; yyDo(yy, yy_1_Mode, yy->__begin, yy->__end); goto l87;
l88:; yy->__pos= yypos87; yy->__thunkpos= yythunkpos87; if (!yymatchString(yy, "enable_type_checks")) goto l89; yyDo(yy, yy_2_Mode, yy->__begin, yy->__end); goto l87;
l89:; yy->__pos= yypos87; yy->__thunkpos= yythunkpos87; if (!yymatchString(yy, "enable_offset_checks")) goto l90; yyDo(yy, yy_3_Mode, yy->__begin, yy->__end); goto l87;
l90:; yy->__pos= yypos87; yy->__thunkpos= yythunkpos87; if (!yymatchString(yy, "enable_ifd_checks")) goto l91; yyDo(yy, yy_4_Mode, yy->__begin, yy->__end); goto l87;
l91:; yy->__pos= yypos87; yy->__thunkpos= yythunkpos87; if (!yymatchString(yy, "enable_deep_geotiff_checks")) goto l92; yyDo(yy, yy_5_Mode, yy->__begin, yy->__end); goto l87;
l92:; yy->__pos= yypos87; yy->__thunkpos= yythunkpos87; if (!yymatchString(yy, "enhanced")) goto l86;
}
l87:;
yyprintf((stderr, " ok %s @ %s\n", "Mode", yy->__buf+yy->__pos));
return 1;
l83:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l86:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "Mode", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_Subpath(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "Subpath"));
{ int yypos94= yy->__pos, yythunkpos94= yy->__thunkpos; if (!yymatchClass(yy, (unsigned char *)"\000\000\000\000\000\000\000\000\376\377\377\007\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000")) goto l95; goto l94;
l95:; yy->__pos= yypos94; yy->__thunkpos= yythunkpos94; if (!yymatchClass(yy, (unsigned char *)"\000\000\000\000\000\000\000\000\000\000\000\000\376\377\377\007\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000")) goto l96; goto l94;
l96:; yy->__pos= yypos94; yy->__thunkpos= yythunkpos94; if (!yymatchClass(yy, (unsigned char *)"\000\000\000\000\000\000\377\003\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000")) goto l97; goto l94;
l97:; yy->__pos= yypos94; yy->__thunkpos= yythunkpos94; if (!yymatchChar(yy, '.')) goto l98; goto l94;
l98:; yy->__pos= yypos94; yy->__thunkpos= yythunkpos94; if (!yymatchChar(yy, '_')) goto l99; goto l94;
l99:; yy->__pos= yypos94; yy->__thunkpos= yythunkpos94; if (!yymatchChar(yy, '-')) goto l93;
}
l94:;
yyprintf((stderr, " ok %s @ %s\n", "Subpath", yy->__buf+yy->__pos));
return 1;
l93:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "Subpath", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_SlashorBackslash(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "SlashorBackslash"));
{ int yypos101= yy->__pos, yythunkpos101= yy->__thunkpos; if (!yymatchChar(yy, '/')) goto l102; goto l101;
l102:; yy->__pos= yypos101; yy->__thunkpos= yythunkpos101; if (!yymatchChar(yy, '\\')) goto l100;
}
l101:;
yyprintf((stderr, " ok %s @ %s\n", "SlashorBackslash", yy->__buf+yy->__pos));
return 1;
l100:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "SlashorBackslash", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_ClosingBracket(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "ClosingBracket")); if (!yymatchChar(yy, ')')) goto l90;
yyprintf((stderr, "%s\n", "ClosingBracket")); if (!yymatchChar(yy, ')')) goto l103;
yyprintf((stderr, " ok %s @ %s\n", "ClosingBracket", yy->__buf+yy->__pos));
return 1;
l90:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l103:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "ClosingBracket", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_Path(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "Path")); if (!yy_SlashorBackslash(yy)) goto l104; if (!yy_Subpath(yy)) goto l104;
l107:;
{ int yypos108= yy->__pos, yythunkpos108= yy->__thunkpos; if (!yy_Subpath(yy)) goto l108; goto l107;
l108:; yy->__pos= yypos108; yy->__thunkpos= yythunkpos108;
}
l105:;
{ int yypos106= yy->__pos, yythunkpos106= yy->__thunkpos; if (!yy_SlashorBackslash(yy)) goto l106; if (!yy_Subpath(yy)) goto l106;
l109:;
{ int yypos110= yy->__pos, yythunkpos110= yy->__thunkpos; if (!yy_Subpath(yy)) goto l110; goto l109;
l110:; yy->__pos= yypos110; yy->__thunkpos= yythunkpos110;
} goto l105;
l106:; yy->__pos= yypos106; yy->__thunkpos= yythunkpos106;
}
yyprintf((stderr, " ok %s @ %s\n", "Path", yy->__buf+yy->__pos));
return 1;
l104:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "Path", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_OpenBracket(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "OpenBracket")); if (!yymatchChar(yy, '(')) goto l91;
yyprintf((stderr, "%s\n", "OpenBracket")); if (!yymatchChar(yy, '(')) goto l111;
yyprintf((stderr, " ok %s @ %s\n", "OpenBracket", yy->__buf+yy->__pos));
return 1;
l91:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l111:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "OpenBracket", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_SpaceLine(yycontext *yy)
{
yyprintf((stderr, "%s\n", "SpaceLine"));
l93:;
{ int yypos94= yy->__pos, yythunkpos94= yy->__thunkpos; if (!yy_Space(yy)) goto l94; goto l93;
l94:; yy->__pos= yypos94; yy->__thunkpos= yythunkpos94;
}
yyprintf((stderr, " ok %s @ %s\n", "SpaceLine", yy->__buf+yy->__pos));
return 1;
}
YY_RULE(int) yy_IncludeLine(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "IncludeLine")); if (!yymatchString(yy, "include")) goto l95; if (!yy_OpenBracket(yy)) goto l95; yyText(yy, yy->__begin, yy->__end); {
yyprintf((stderr, "%s\n", "IncludeLine")); if (!yymatchString(yy, "include")) goto l112; if (!yy_OpenBracket(yy)) goto l112; yyText(yy, yy->__begin, yy->__end); {
#define yytext yy->__text
#define yyleng yy->__textlen
if (!(YY_BEGIN)) goto l95;
if (!(YY_BEGIN)) goto l112;
#undef yytext
#undef yyleng
} if (!yymatchClass(yy, (unsigned char *)"\000\000\000\000\000\340\377\003\376\377\377\207\376\377\377\007\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000")) goto l95;
l96:;
{ int yypos97= yy->__pos, yythunkpos97= yy->__thunkpos; if (!yymatchClass(yy, (unsigned char *)"\000\000\000\000\000\340\377\003\376\377\377\207\376\377\377\007\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000")) goto l97; goto l96;
l97:; yy->__pos= yypos97; yy->__thunkpos= yythunkpos97;
} yyText(yy, yy->__begin, yy->__end); {
} if (!yy_Path(yy)) goto l112; yyText(yy, yy->__begin, yy->__end); {
#define yytext yy->__text
#define yyleng yy->__textlen
if (!(YY_END)) goto l95;
if (!(YY_END)) goto l112;
#undef yytext
#undef yyleng
} if (!yy_ClosingBracket(yy)) goto l95; yyDo(yy, yy_1_IncludeLine, yy->__begin, yy->__end);
} if (!yy_ClosingBracket(yy)) goto l112; yyDo(yy, yy_1_IncludeLine, yy->__begin, yy->__end);
yyprintf((stderr, " ok %s @ %s\n", "IncludeLine", yy->__buf+yy->__pos));
return 1;
l95:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l112:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "IncludeLine", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_CommentLine(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "CommentLine")); if (!yymatchChar(yy, '#')) goto l98;
l99:;
{ int yypos100= yy->__pos, yythunkpos100= yy->__thunkpos;
{ int yypos101= yy->__pos, yythunkpos101= yy->__thunkpos; if (!yy_EndOfLine(yy)) goto l101; goto l100;
l101:; yy->__pos= yypos101; yy->__thunkpos= yythunkpos101;
} if (!yymatchDot(yy)) goto l100; goto l99;
l100:; yy->__pos= yypos100; yy->__thunkpos= yythunkpos100;
yyprintf((stderr, "%s\n", "CommentLine")); if (!yymatchChar(yy, '#')) goto l113; yyText(yy, yy->__begin, yy->__end); {
#define yytext yy->__text
#define yyleng yy->__textlen
if (!(YY_BEGIN)) goto l113;
#undef yytext
#undef yyleng
}
l114:;
{ int yypos115= yy->__pos, yythunkpos115= yy->__thunkpos;
{ int yypos116= yy->__pos, yythunkpos116= yy->__thunkpos; if (!yy_EndOfLine(yy)) goto l116; goto l115;
l116:; yy->__pos= yypos116; yy->__thunkpos= yythunkpos116;
} if (!yymatchDot(yy)) goto l115; goto l114;
l115:; yy->__pos= yypos115; yy->__thunkpos= yythunkpos115;
} yyText(yy, yy->__begin, yy->__end); {
#define yytext yy->__text
#define yyleng yy->__textlen
if (!(YY_END)) goto l113;
#undef yytext
#undef yyleng
} yyDo(yy, yy_1_CommentLine, yy->__begin, yy->__end);
yyprintf((stderr, " ok %s @ %s\n", "CommentLine", yy->__buf+yy->__pos));
return 1;
l98:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l113:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "CommentLine", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_ModeLine(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "ModeLine")); if (!yymatchString(yy, "mode")) goto l102; if (!yy_OpenBracket(yy)) goto l102; yyText(yy, yy->__begin, yy->__end); {
yyprintf((stderr, "%s\n", "ModeLine")); if (!yymatchString(yy, "mode")) goto l117; if (!yy_OpenBracket(yy)) goto l117; yyText(yy, yy->__begin, yy->__end); {
#define yytext yy->__text
#define yyleng yy->__textlen
if (!(YY_BEGIN)) goto l102;
if (!(YY_BEGIN)) goto l117;
#undef yytext
#undef yyleng
} if (!yy_Mode(yy)) goto l102; yyText(yy, yy->__begin, yy->__end); {
} if (!yy_Mode(yy)) goto l117; yyText(yy, yy->__begin, yy->__end); {
#define yytext yy->__text
#define yyleng yy->__textlen
if (!(YY_END)) goto l102;
if (!(YY_END)) goto l117;
#undef yytext
#undef yyleng
} if (!yy_ClosingBracket(yy)) goto l102; yyDo(yy, yy_1_ModeLine, yy->__begin, yy->__end);
} if (!yy_ClosingBracket(yy)) goto l117; yyDo(yy, yy_1_ModeLine, yy->__begin, yy->__end);
yyprintf((stderr, " ok %s @ %s\n", "ModeLine", yy->__buf+yy->__pos));
return 1;
l102:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l117:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "ModeLine", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_TagLine(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "TagLine"));
{ int yypos104= yy->__pos, yythunkpos104= yy->__thunkpos; if (!yy_Tag(yy)) goto l105; if (!yy_Semicolon(yy)) goto l105; if (!yy_Requirements(yy)) goto l105; if (!yy_Semicolon(yy)) goto l105; if (!yy_Content(yy)) goto l105; yyDo(yy, yy_1_TagLine, yy->__begin, yy->__end); goto l104;
l105:; yy->__pos= yypos104; yy->__thunkpos= yythunkpos104; if (!yy_Tag(yy)) goto l103; if (!yy_Semicolon(yy)) goto l103; if (!yy_Requirements(yy)) goto l103; if (!yy_Semicolon(yy)) goto l103; if (!yy_LogicalOr(yy)) goto l103; yyDo(yy, yy_2_TagLine, yy->__begin, yy->__end);
{ int yypos119= yy->__pos, yythunkpos119= yy->__thunkpos; if (!yy_Tag(yy)) goto l120; if (!yy_Semicolon(yy)) goto l120; if (!yy_Requirements(yy)) goto l120; if (!yy_Semicolon(yy)) goto l120; if (!yy_Content(yy)) goto l120; yyDo(yy, yy_1_TagLine, yy->__begin, yy->__end); goto l119;
l120:; yy->__pos= yypos119; yy->__thunkpos= yythunkpos119; if (!yy_Tag(yy)) goto l118; if (!yy_Semicolon(yy)) goto l118; if (!yy_Requirements(yy)) goto l118; if (!yy_Semicolon(yy)) goto l118; if (!yy_LogicalOr(yy)) goto l118; yyDo(yy, yy_2_TagLine, yy->__begin, yy->__end);
}
l104:;
l119:;
yyprintf((stderr, " ok %s @ %s\n", "TagLine", yy->__buf+yy->__pos));
return 1;
l103:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l118:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "TagLine", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_EndOfLine(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "EndOfLine")); if (!yymatchClass(yy, (unsigned char *)"\000\044\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000")) goto l106; yyDo(yy, yy_1_EndOfLine, yy->__begin, yy->__end);
yyprintf((stderr, "%s\n", "EndOfLine")); if (!yymatchClass(yy, (unsigned char *)"\000\044\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000")) goto l121; yyDo(yy, yy_1_EndOfLine, yy->__begin, yy->__end);
yyprintf((stderr, " ok %s @ %s\n", "EndOfLine", yy->__buf+yy->__pos));
return 1;
l106:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l121:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "EndOfLine", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_LineType(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "LineType"));
{ int yypos108= yy->__pos, yythunkpos108= yy->__thunkpos; if (!yy_TagLine(yy)) goto l109; goto l108;
l109:; yy->__pos= yypos108; yy->__thunkpos= yythunkpos108; if (!yy_ModeLine(yy)) goto l110; goto l108;
l110:; yy->__pos= yypos108; yy->__thunkpos= yythunkpos108; if (!yy_CommentLine(yy)) goto l111; goto l108;
l111:; yy->__pos= yypos108; yy->__thunkpos= yythunkpos108; if (!yy_IncludeLine(yy)) goto l112; goto l108;
l112:; yy->__pos= yypos108; yy->__thunkpos= yythunkpos108; if (!yy_SpaceLine(yy)) goto l107;
{ int yypos123= yy->__pos, yythunkpos123= yy->__thunkpos; if (!yy_TagLine(yy)) goto l124; goto l123;
l124:; yy->__pos= yypos123; yy->__thunkpos= yythunkpos123; if (!yy_ModeLine(yy)) goto l125; goto l123;
l125:; yy->__pos= yypos123; yy->__thunkpos= yythunkpos123; if (!yy_CommentLine(yy)) goto l126; goto l123;
l126:; yy->__pos= yypos123; yy->__thunkpos= yythunkpos123; if (!yy_IncludeLine(yy)) goto l122;
}
l108:;
l123:;
yyprintf((stderr, " ok %s @ %s\n", "LineType", yy->__buf+yy->__pos));
return 1;
l107:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l122:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "LineType", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_EndOfFile(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "EndOfFile"));
{ int yypos114= yy->__pos, yythunkpos114= yy->__thunkpos; if (!yymatchDot(yy)) goto l114; goto l113;
l114:; yy->__pos= yypos114; yy->__thunkpos= yythunkpos114;
{ int yypos128= yy->__pos, yythunkpos128= yy->__thunkpos; if (!yymatchDot(yy)) goto l128; goto l127;
l128:; yy->__pos= yypos128; yy->__thunkpos= yythunkpos128;
}
yyprintf((stderr, " ok %s @ %s\n", "EndOfFile", yy->__buf+yy->__pos));
return 1;
l113:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l127:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "EndOfFile", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_Line(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "Line"));
{ int yypos116= yy->__pos, yythunkpos116= yy->__thunkpos; if (!yy_LineType(yy)) goto l117; if (!yy_EndOfLine(yy)) goto l117; goto l116;
l117:; yy->__pos= yypos116; yy->__thunkpos= yythunkpos116; yyText(yy, yy->__begin, yy->__end); {
{ int yypos130= yy->__pos, yythunkpos130= yy->__thunkpos; if (!yy_LineType(yy)) goto l131; if (!yy_EndOfLine(yy)) goto l131; goto l130;
l131:; yy->__pos= yypos130; yy->__thunkpos= yythunkpos130; yyText(yy, yy->__begin, yy->__end); {
#define yytext yy->__text
#define yyleng yy->__textlen
if (!(YY_BEGIN)) goto l115;
if (!(YY_BEGIN)) goto l129;
#undef yytext
#undef yyleng
} if (!yymatchClass(yy, (unsigned char *)"\377\333\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377")) goto l115;
l118:;
{ int yypos119= yy->__pos, yythunkpos119= yy->__thunkpos; if (!yymatchClass(yy, (unsigned char *)"\377\333\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377")) goto l119; goto l118;
l119:; yy->__pos= yypos119; yy->__thunkpos= yythunkpos119;
} if (!yymatchClass(yy, (unsigned char *)"\377\333\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377")) goto l129;
l132:;
{ int yypos133= yy->__pos, yythunkpos133= yy->__thunkpos; if (!yymatchClass(yy, (unsigned char *)"\377\333\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377")) goto l133; goto l132;
l133:; yy->__pos= yypos133; yy->__thunkpos= yythunkpos133;
} yyText(yy, yy->__begin, yy->__end); {
#define yytext yy->__text
#define yyleng yy->__textlen
if (!(YY_END)) goto l115;
if (!(YY_END)) goto l129;
#undef yytext
#undef yyleng
} if (!yy_EndOfLine(yy)) goto l115; yyDo(yy, yy_1_Line, yy->__begin, yy->__end);
} if (!yy_EndOfLine(yy)) goto l129; yyDo(yy, yy_1_Line, yy->__begin, yy->__end);
}
l116:;
l130:;
yyprintf((stderr, " ok %s @ %s\n", "Line", yy->__buf+yy->__pos));
return 1;
l115:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l129:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "Line", yy->__buf+yy->__pos));
return 0;
}
YY_RULE(int) yy_start(yycontext *yy)
{ int yypos0= yy->__pos, yythunkpos0= yy->__thunkpos;
yyprintf((stderr, "%s\n", "start")); if (!yy_Line(yy)) goto l120;
l121:;
{ int yypos122= yy->__pos, yythunkpos122= yy->__thunkpos; if (!yy_Line(yy)) goto l122; goto l121;
l122:; yy->__pos= yypos122; yy->__thunkpos= yythunkpos122;
} if (!yy_EndOfFile(yy)) goto l120;
yyprintf((stderr, "%s\n", "start")); if (!yy_Line(yy)) goto l134;
l135:;
{ int yypos136= yy->__pos, yythunkpos136= yy->__thunkpos; if (!yy_Line(yy)) goto l136; goto l135;
l136:; yy->__pos= yypos136; yy->__thunkpos= yythunkpos136;
} if (!yy_EndOfFile(yy)) goto l134;
yyprintf((stderr, " ok %s @ %s\n", "start", yy->__buf+yy->__pos));
return 1;
l120:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
l134:; yy->__pos= yypos0; yy->__thunkpos= yythunkpos0;
yyprintf((stderr, " fail %s @ %s\n", "start", yy->__buf+yy->__pos));
return 0;
}


+ 21
- 4
src/parser/config_dsl.grammar.peg View File

@ -13,9 +13,23 @@ LineType <- TagLine
/ ModeLine
/ CommentLine
/ IncludeLine
/ SpaceLine
CommentLine <- '#' ( !EndOfLine .)* { commentline(); }
IncludeLine <- 'include' OpenBracket < ( [A-Za-z0-9_./\-]+ ) > ClosingBracket { set_include ( yytext ); }
CommentLine <- '#' < ( !EndOfLine .)* > { commentline(); }
IncludeLine <- 'include' OpenBracket < Path > ClosingBracket { set_include ( yytext ); }
SlashorBackslash <- '/'
/ '\\'
Path <- ( SlashorBackslash (Subpath)+ )+
Subpath <- [A-Z]
/ [a-z]
/ [0-9]
/ '.'
/ '_'
/ '-'
ModeLine <- 'mode' OpenBracket < Mode > ClosingBracket { int i = i_pop(); set_mode( i ); }
LogicalOr <- 'logical_or' LogicalOrOpen LogicalOrList LogicalOrClose
@ -72,10 +86,13 @@ Content <- Any { v_push( any );
/ Datetime { v_push( datetime ); }
/ Iccprofile { v_push( iccprofile ); }
# / SBit { v_push( sbit ); }
Range <- 'range' OpenBracket Number Colon Number ClosingBracket
Number <- < '0x' ( [0-9a-f]+ ) > { i_push(strtol(yytext, NULL, 0) ); }
Number <- < '0x' [0-9a-f]+ > { i_push(strtol(yytext, NULL, 0) ); }
/ '2^' < ( Digit )+ > { i_push(2<<atol(yytext) ); }
/ < ( Digit )+ > { i_push(atol(yytext) );}
Colon <- ',' (Space )*
Dot <- '.' (Space )*
OpenBracket <- '('


Loading…
Cancel
Save