|
|
@ -1,5 +1,5 @@ |
|
|
|
/* Generated by re2c 2.2 */ |
|
|
|
#line 1 "espurna\\ir_parse_simple.re" |
|
|
|
/* Generated by re2c 3.0 */ |
|
|
|
#line 1 "espurna/ir_parse_simple.re" |
|
|
|
/* |
|
|
|
|
|
|
|
Part of the IR MODULE |
|
|
@ -29,168 +29,164 @@ ParseResult<Payload> parse(StringView view) { |
|
|
|
ParseResult<Payload> out; |
|
|
|
|
|
|
|
|
|
|
|
#line 33 "espurna\\ir_parse_simple.re.ipp" |
|
|
|
#line 33 "espurna/ir_parse_simple.re.ipp" |
|
|
|
const char *yyt1 { nullptr }; |
|
|
|
const char *yyt2 { nullptr }; |
|
|
|
const char *yyt3 { nullptr }; |
|
|
|
const char *yyt4 { nullptr }; |
|
|
|
const char *yyt5 { nullptr }; |
|
|
|
const char *yyt6 { nullptr }; |
|
|
|
#line 29 "espurna\\ir_parse_simple.re" |
|
|
|
#line 29 "espurna/ir_parse_simple.re" |
|
|
|
|
|
|
|
|
|
|
|
#line 43 "espurna\\ir_parse_simple.re.ipp" |
|
|
|
#line 43 "espurna/ir_parse_simple.re.ipp" |
|
|
|
{ |
|
|
|
char yych; |
|
|
|
unsigned int yyaccept = 0; |
|
|
|
yych = *YYCURSOR; |
|
|
|
switch (yych) { |
|
|
|
case '0' ... '9': |
|
|
|
yyt1 = YYCURSOR; |
|
|
|
goto yy4; |
|
|
|
default: |
|
|
|
if (YYLIMIT <= YYCURSOR) goto yy41; |
|
|
|
goto yy2; |
|
|
|
case '0' ... '9': |
|
|
|
yyt1 = YYCURSOR; |
|
|
|
goto yy3; |
|
|
|
default: |
|
|
|
if (YYLIMIT <= YYCURSOR) goto yy36; |
|
|
|
goto yy1; |
|
|
|
} |
|
|
|
yy2: |
|
|
|
yy1: |
|
|
|
++YYCURSOR; |
|
|
|
yy3: |
|
|
|
#line 63 "espurna\\ir_parse_simple.re" |
|
|
|
yy2: |
|
|
|
#line 63 "espurna/ir_parse_simple.re" |
|
|
|
{ goto return_out; } |
|
|
|
#line 61 "espurna\\ir_parse_simple.re.ipp" |
|
|
|
yy4: |
|
|
|
#line 61 "espurna/ir_parse_simple.re.ipp" |
|
|
|
yy3: |
|
|
|
yyaccept = 0; |
|
|
|
yych = *(YYMARKER = ++YYCURSOR); |
|
|
|
switch (yych) { |
|
|
|
case '0' ... ':': goto yy6; |
|
|
|
default: goto yy3; |
|
|
|
case '0' ... ':': goto yy5; |
|
|
|
default: goto yy2; |
|
|
|
} |
|
|
|
yy5: |
|
|
|
yy4: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
yy6: |
|
|
|
yy5: |
|
|
|
switch (yych) { |
|
|
|
case '0' ... '9': goto yy5; |
|
|
|
case ':': goto yy8; |
|
|
|
default: goto yy7; |
|
|
|
case '0' ... '9': goto yy4; |
|
|
|
case ':': goto yy7; |
|
|
|
default: goto yy6; |
|
|
|
} |
|
|
|
yy7: |
|
|
|
yy6: |
|
|
|
YYCURSOR = YYMARKER; |
|
|
|
switch (yyaccept) { |
|
|
|
case 0: |
|
|
|
goto yy3; |
|
|
|
case 1: |
|
|
|
goto yy16; |
|
|
|
case 2: |
|
|
|
goto yy22; |
|
|
|
default: |
|
|
|
goto yy28; |
|
|
|
case 0: goto yy2; |
|
|
|
case 1: goto yy14; |
|
|
|
case 2: goto yy19; |
|
|
|
default: goto yy24; |
|
|
|
} |
|
|
|
yy7: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
switch (yych) { |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': |
|
|
|
yyt2 = YYCURSOR; |
|
|
|
goto yy8; |
|
|
|
default: goto yy6; |
|
|
|
} |
|
|
|
yy8: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
switch (yych) { |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': |
|
|
|
yyt2 = YYCURSOR; |
|
|
|
goto yy9; |
|
|
|
default: goto yy7; |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy9; |
|
|
|
default: goto yy6; |
|
|
|
} |
|
|
|
yy9: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
switch (yych) { |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy10; |
|
|
|
default: goto yy7; |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy10; |
|
|
|
case ':': goto yy11; |
|
|
|
default: goto yy6; |
|
|
|
} |
|
|
|
yy10: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
switch (yych) { |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy11; |
|
|
|
case ':': goto yy12; |
|
|
|
default: goto yy7; |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy12; |
|
|
|
case ':': goto yy11; |
|
|
|
default: goto yy6; |
|
|
|
} |
|
|
|
yy11: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
switch (yych) { |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy13; |
|
|
|
case ':': goto yy12; |
|
|
|
default: goto yy7; |
|
|
|
case '0' ... '9': |
|
|
|
yyt3 = YYCURSOR; |
|
|
|
goto yy13; |
|
|
|
default: goto yy6; |
|
|
|
} |
|
|
|
yy12: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
switch (yych) { |
|
|
|
case '0' ... '9': |
|
|
|
yyt3 = YYCURSOR; |
|
|
|
goto yy14; |
|
|
|
default: goto yy7; |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy15; |
|
|
|
case ':': goto yy11; |
|
|
|
default: goto yy6; |
|
|
|
} |
|
|
|
yy13: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
switch (yych) { |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy17; |
|
|
|
case ':': goto yy12; |
|
|
|
default: goto yy7; |
|
|
|
} |
|
|
|
yy14: |
|
|
|
yyaccept = 1; |
|
|
|
yych = *(YYMARKER = ++YYCURSOR); |
|
|
|
switch (yych) { |
|
|
|
case '0' ... '9': goto yy14; |
|
|
|
case ':': goto yy18; |
|
|
|
default: goto yy16; |
|
|
|
case '0' ... '9': goto yy13; |
|
|
|
case ':': goto yy16; |
|
|
|
default: goto yy14; |
|
|
|
} |
|
|
|
yy16: |
|
|
|
yy14: |
|
|
|
p0 = yyt1; |
|
|
|
c0 = yyt2; |
|
|
|
b0 = yyt3; |
|
|
|
p1 = yyt2 - 1; |
|
|
|
c1 = yyt3 - 1; |
|
|
|
b1 = YYCURSOR; |
|
|
|
#line 43 "espurna\\ir_parse_simple.re" |
|
|
|
#line 43 "espurna/ir_parse_simple.re" |
|
|
|
{ goto update_out; } |
|
|
|
#line 159 "espurna\\ir_parse_simple.re.ipp" |
|
|
|
yy17: |
|
|
|
#line 155 "espurna/ir_parse_simple.re.ipp" |
|
|
|
yy15: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
switch (yych) { |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy19; |
|
|
|
case ':': goto yy12; |
|
|
|
default: goto yy7; |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy17; |
|
|
|
case ':': goto yy11; |
|
|
|
default: goto yy6; |
|
|
|
} |
|
|
|
yy18: |
|
|
|
yy16: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
switch (yych) { |
|
|
|
case '0' ... '9': |
|
|
|
yyt4 = YYCURSOR; |
|
|
|
goto yy20; |
|
|
|
default: goto yy7; |
|
|
|
case '0' ... '9': |
|
|
|
yyt4 = YYCURSOR; |
|
|
|
goto yy18; |
|
|
|
default: goto yy6; |
|
|
|
} |
|
|
|
yy19: |
|
|
|
yy17: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
switch (yych) { |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy23; |
|
|
|
case ':': goto yy12; |
|
|
|
default: goto yy7; |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy20; |
|
|
|
case ':': goto yy11; |
|
|
|
default: goto yy6; |
|
|
|
} |
|
|
|
yy20: |
|
|
|
yy18: |
|
|
|
yyaccept = 2; |
|
|
|
yych = *(YYMARKER = ++YYCURSOR); |
|
|
|
switch (yych) { |
|
|
|
case '0' ... '9': goto yy20; |
|
|
|
case ':': goto yy24; |
|
|
|
default: goto yy22; |
|
|
|
case '0' ... '9': goto yy18; |
|
|
|
case ':': goto yy21; |
|
|
|
default: goto yy19; |
|
|
|
} |
|
|
|
yy22: |
|
|
|
yy19: |
|
|
|
p0 = yyt1; |
|
|
|
c0 = yyt2; |
|
|
|
b0 = yyt3; |
|
|
@ -199,44 +195,44 @@ yy22: |
|
|
|
c1 = yyt3 - 1; |
|
|
|
b1 = yyt4 - 1; |
|
|
|
r1 = YYCURSOR; |
|
|
|
#line 48 "espurna\\ir_parse_simple.re" |
|
|
|
#line 48 "espurna/ir_parse_simple.re" |
|
|
|
{ goto update_out; } |
|
|
|
#line 205 "espurna\\ir_parse_simple.re.ipp" |
|
|
|
yy23: |
|
|
|
#line 201 "espurna/ir_parse_simple.re.ipp" |
|
|
|
yy20: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
switch (yych) { |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy25; |
|
|
|
case ':': goto yy12; |
|
|
|
default: goto yy7; |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy22; |
|
|
|
case ':': goto yy11; |
|
|
|
default: goto yy6; |
|
|
|
} |
|
|
|
yy24: |
|
|
|
yy21: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
switch (yych) { |
|
|
|
case '0' ... '9': |
|
|
|
yyt5 = YYCURSOR; |
|
|
|
goto yy26; |
|
|
|
default: goto yy7; |
|
|
|
case '0' ... '9': |
|
|
|
yyt5 = YYCURSOR; |
|
|
|
goto yy23; |
|
|
|
default: goto yy6; |
|
|
|
} |
|
|
|
yy25: |
|
|
|
yy22: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
switch (yych) { |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy29; |
|
|
|
case ':': goto yy12; |
|
|
|
default: goto yy7; |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy25; |
|
|
|
case ':': goto yy11; |
|
|
|
default: goto yy6; |
|
|
|
} |
|
|
|
yy26: |
|
|
|
yy23: |
|
|
|
yyaccept = 3; |
|
|
|
yych = *(YYMARKER = ++YYCURSOR); |
|
|
|
switch (yych) { |
|
|
|
case '0' ... '9': goto yy26; |
|
|
|
case ':': goto yy30; |
|
|
|
default: goto yy28; |
|
|
|
case '0' ... '9': goto yy23; |
|
|
|
case ':': goto yy26; |
|
|
|
default: goto yy24; |
|
|
|
} |
|
|
|
yy28: |
|
|
|
yy24: |
|
|
|
p0 = yyt1; |
|
|
|
c0 = yyt2; |
|
|
|
b0 = yyt3; |
|
|
@ -247,42 +243,42 @@ yy28: |
|
|
|
b1 = yyt4 - 1; |
|
|
|
r1 = yyt5 - 1; |
|
|
|
s1 = YYCURSOR; |
|
|
|
#line 54 "espurna\\ir_parse_simple.re" |
|
|
|
#line 54 "espurna/ir_parse_simple.re" |
|
|
|
{ goto update_out; } |
|
|
|
#line 253 "espurna\\ir_parse_simple.re.ipp" |
|
|
|
yy29: |
|
|
|
#line 249 "espurna/ir_parse_simple.re.ipp" |
|
|
|
yy25: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
switch (yych) { |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy31; |
|
|
|
case ':': goto yy12; |
|
|
|
default: goto yy7; |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy27; |
|
|
|
case ':': goto yy11; |
|
|
|
default: goto yy6; |
|
|
|
} |
|
|
|
yy30: |
|
|
|
yy26: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
switch (yych) { |
|
|
|
case '0' ... '9': |
|
|
|
yyt6 = YYCURSOR; |
|
|
|
goto yy32; |
|
|
|
default: goto yy7; |
|
|
|
case '0' ... '9': |
|
|
|
yyt6 = YYCURSOR; |
|
|
|
goto yy28; |
|
|
|
default: goto yy6; |
|
|
|
} |
|
|
|
yy31: |
|
|
|
yy27: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
switch (yych) { |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy35; |
|
|
|
case ':': goto yy12; |
|
|
|
default: goto yy7; |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy30; |
|
|
|
case ':': goto yy11; |
|
|
|
default: goto yy6; |
|
|
|
} |
|
|
|
yy32: |
|
|
|
yy28: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
switch (yych) { |
|
|
|
case '0' ... '9': goto yy32; |
|
|
|
default: goto yy34; |
|
|
|
case '0' ... '9': goto yy28; |
|
|
|
default: goto yy29; |
|
|
|
} |
|
|
|
yy34: |
|
|
|
yy29: |
|
|
|
p0 = yyt1; |
|
|
|
c0 = yyt2; |
|
|
|
b0 = yyt3; |
|
|
@ -295,66 +291,66 @@ yy34: |
|
|
|
r1 = yyt5 - 1; |
|
|
|
s1 = yyt6 - 1; |
|
|
|
d1 = YYCURSOR; |
|
|
|
#line 61 "espurna\\ir_parse_simple.re" |
|
|
|
#line 61 "espurna/ir_parse_simple.re" |
|
|
|
{ goto update_out; } |
|
|
|
#line 301 "espurna\\ir_parse_simple.re.ipp" |
|
|
|
yy35: |
|
|
|
#line 297 "espurna/ir_parse_simple.re.ipp" |
|
|
|
yy30: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
switch (yych) { |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy36; |
|
|
|
case ':': goto yy12; |
|
|
|
default: goto yy7; |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy31; |
|
|
|
case ':': goto yy11; |
|
|
|
default: goto yy6; |
|
|
|
} |
|
|
|
yy36: |
|
|
|
yy31: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
switch (yych) { |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy37; |
|
|
|
case ':': goto yy12; |
|
|
|
default: goto yy7; |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy32; |
|
|
|
case ':': goto yy11; |
|
|
|
default: goto yy6; |
|
|
|
} |
|
|
|
yy37: |
|
|
|
yy32: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
switch (yych) { |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy38; |
|
|
|
case ':': goto yy12; |
|
|
|
default: goto yy7; |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy33; |
|
|
|
case ':': goto yy11; |
|
|
|
default: goto yy6; |
|
|
|
} |
|
|
|
yy38: |
|
|
|
yy33: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
switch (yych) { |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy39; |
|
|
|
case ':': goto yy12; |
|
|
|
default: goto yy7; |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy34; |
|
|
|
case ':': goto yy11; |
|
|
|
default: goto yy6; |
|
|
|
} |
|
|
|
yy39: |
|
|
|
yy34: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
switch (yych) { |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy40; |
|
|
|
case ':': goto yy12; |
|
|
|
default: goto yy7; |
|
|
|
case '0' ... '9': |
|
|
|
case 'A' ... 'F': |
|
|
|
case 'a' ... 'f': goto yy35; |
|
|
|
case ':': goto yy11; |
|
|
|
default: goto yy6; |
|
|
|
} |
|
|
|
yy40: |
|
|
|
yy35: |
|
|
|
yych = *++YYCURSOR; |
|
|
|
switch (yych) { |
|
|
|
case ':': goto yy12; |
|
|
|
default: goto yy7; |
|
|
|
case ':': goto yy11; |
|
|
|
default: goto yy6; |
|
|
|
} |
|
|
|
yy41: |
|
|
|
#line 64 "espurna\\ir_parse_simple.re" |
|
|
|
yy36: |
|
|
|
#line 64 "espurna/ir_parse_simple.re" |
|
|
|
{ goto return_out; } |
|
|
|
#line 356 "espurna\\ir_parse_simple.re.ipp" |
|
|
|
#line 352 "espurna/ir_parse_simple.re.ipp" |
|
|
|
} |
|
|
|
#line 65 "espurna\\ir_parse_simple.re" |
|
|
|
#line 65 "espurna/ir_parse_simple.re" |
|
|
|
|
|
|
|
|
|
|
|
update_out: |
|
|
|