-/* Generated by re2c 0.13.7.dev on Wed Jan 22 14:18:44 2014 */
+/* Generated by re2c 0.13.7.dev on Tue Feb 25 13:38:29 2014 */
/* $Id$ */
#include <stdlib.h>
#include <string.h>
224, 224, 224, 224, 224, 224, 224, 224,
236, 236, 236, 236, 236, 236, 236, 236,
236, 236, 224, 224, 224, 224, 224, 224,
- 224, 228, 228, 228, 228, 228, 228, 228,
- 228, 228, 228, 228, 228, 228, 228, 228,
- 228, 228, 228, 228, 228, 228, 228, 228,
- 228, 228, 228, 224, 0, 192, 224, 228,
- 224, 228, 228, 228, 228, 228, 228, 228,
- 228, 228, 228, 228, 228, 228, 228, 228,
- 228, 228, 228, 228, 228, 228, 228, 228,
- 228, 228, 228, 224, 224, 224, 224, 224,
+ 224, 232, 232, 232, 232, 232, 232, 232,
+ 232, 232, 232, 232, 232, 232, 232, 232,
+ 232, 232, 232, 232, 232, 232, 232, 232,
+ 232, 232, 232, 224, 0, 192, 224, 232,
+ 224, 232, 232, 232, 232, 232, 232, 232,
+ 232, 232, 232, 232, 232, 232, 232, 232,
+ 232, 232, 232, 232, 232, 232, 232, 232,
+ 232, 232, 232, 224, 224, 224, 224, 224,
224, 224, 224, 224, 224, 224, 224, 224,
224, 224, 224, 224, 224, 224, 224, 224,
224, 224, 224, 224, 224, 224, 224, 224,
if (yych <= '<') {
if (yych <= '9') {
if (yych <= '/') goto yy132;
+ goto yy133;
} else {
- if (yych <= ':') goto yy133;
+ if (yych <= ':') goto yy134;
if (yych <= ';') goto yy124;
- goto yy134;
+ goto yy135;
}
} else {
if (yych <= '?') {
goto yy128;
} else {
if (yych <= '@') goto yy112;
- if (yych <= 'Z') goto yy135;
+ if (yych <= 'Z') goto yy133;
goto yy136;
}
}
if (yych <= '^') {
if (yych <= '\\') goto yy124;
} else {
- if (yych != '`') goto yy135;
+ if (yych != '`') goto yy133;
}
} else {
if (yych <= 'z') {
if (yych <= 'r') goto yy138;
- goto yy135;
+ goto yy133;
} else {
if (yych <= '{') goto yy139;
if (yych <= '|') goto yy124;
if (yych == '/') goto yy211;
goto yy125;
yy133:
+ YYCTXMARKER = YYCURSOR + 1;
+ yych = *++YYCURSOR;
+ goto yy169;
+yy134:
YYCTXMARKER = YYCURSOR + 1;
yych = *++YYCURSOR;
if (yych == '=') goto yy205;
goto yy113;
-yy134:
+yy135:
yyaccept = 3;
yych = *(YYMARKER = ++YYCURSOR);
if (yych == '!') goto yy196;
if (yych == '>') goto yy198;
goto yy125;
-yy135:
- YYCTXMARKER = YYCURSOR + 1;
- yych = *++YYCURSOR;
- goto yy164;
yy136:
yyaccept = 4;
yych = *(YYMARKER = ++YYCURSOR);
yy138:
YYCTXMARKER = YYCURSOR + 1;
yych = *++YYCURSOR;
- if (yych == 'e') goto yy166;
- goto yy164;
+ if (yych == 'e') goto yy170;
+ goto yy169;
yy139:
yyaccept = 5;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '/') {
if (yych == ',') goto yy147;
} else {
- if (yych <= '0') goto yy144;
- if (yych <= '9') goto yy145;
+ if (yych <= '0') goto yy141;
+ if (yych <= '9') goto yy143;
}
} else {
if (yych <= '_') {
- if (yych <= 'Z') goto yy141;
- if (yych >= '_') goto yy141;
+ if (yych <= 'Z') goto yy145;
+ if (yych >= '_') goto yy145;
} else {
if (yych <= '`') goto yy140;
- if (yych <= 'z') goto yy141;
+ if (yych <= 'z') goto yy145;
}
}
yy140:
goto code;
}
yy141:
- ++YYCURSOR;
- if (YYLIMIT <= YYCURSOR) YYFILL(1);
- yych = *YYCURSOR;
- if (yybm[0+yych] & 4) {
- goto yy141;
- }
- if (yych == '}') goto yy161;
-yy143:
+ yych = *++YYCURSOR;
+ if (yych == ',') goto yy160;
+ goto yy144;
+yy142:
YYCURSOR = YYMARKER;
if (yyaccept <= 3) {
if (yyaccept <= 1) {
if (yyaccept == 6) {
goto yy148;
} else {
- goto yy181;
+ goto yy176;
}
}
}
+yy143:
+ ++YYCURSOR;
+ if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
+ yych = *YYCURSOR;
yy144:
- yych = *++YYCURSOR;
- if (yych == ',') goto yy158;
- goto yy146;
+ if (yybm[0+yych] & 4) {
+ goto yy143;
+ }
+ if (yych <= '^') {
+ if (yych <= ',') {
+ if (yych <= '+') goto yy142;
+ goto yy153;
+ } else {
+ if (yych <= '@') goto yy142;
+ if (yych >= '[') goto yy142;
+ }
+ } else {
+ if (yych <= 'z') {
+ if (yych == '`') goto yy142;
+ } else {
+ if (yych == '}') goto yy151;
+ goto yy142;
+ }
+ }
yy145:
++YYCURSOR;
- if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy146:
if (yybm[0+yych] & 8) {
goto yy145;
}
- if (yych == ',') goto yy151;
if (yych == '}') goto yy149;
- goto yy143;
+ goto yy142;
yy147:
++YYCURSOR;
yy148:
fatal("illegal closure form, use '{n}', '{n,}', '{n,m}' where n and m are numbers");
}
yy149:
+ ++YYCURSOR;
+ {
+ if (!FFlag) {
+ fatal("curly braces for names only allowed with -F switch");
+ }
+ cur = cursor;
+ yylval.symbol = Symbol::find(token(1, cur - tok - 2));
+ return ID;
+ }
+yy151:
++YYCURSOR;
{
yylval.extop.minsize = atoi((char *)tok+1);
yylval.extop.maxsize = atoi((char *)tok+1);
RETURN(CLOSESIZE);
}
-yy151:
+yy153:
yyaccept = 6;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '/') goto yy148;
- if (yych <= '9') goto yy154;
+ if (yych <= '9') goto yy156;
if (yych != '}') goto yy148;
++YYCURSOR;
{
yylval.extop.maxsize = -1;
RETURN(CLOSESIZE);
}
-yy154:
+yy156:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- if (yych <= '/') goto yy143;
- if (yych <= '9') goto yy154;
- if (yych != '}') goto yy143;
+ if (yych <= '/') goto yy142;
+ if (yych <= '9') goto yy156;
+ if (yych != '}') goto yy142;
++YYCURSOR;
{
yylval.extop.minsize = atoi((char *)tok+1);
yylval.extop.maxsize = MAX(yylval.extop.minsize,atoi(strchr((char *)tok, ',')+1));
RETURN(CLOSESIZE);
}
-yy158:
+yy160:
yyaccept = 6;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '/') goto yy148;
- if (yych <= '9') goto yy154;
+ if (yych <= '9') goto yy156;
if (yych != '}') goto yy148;
++YYCURSOR;
{
yylval.op = '*';
RETURN(CLOSE);
}
-yy161:
- ++YYCURSOR;
- {
- if (!FFlag) {
- fatal("curly braces for names only allowed with -F switch");
- }
- cur = cursor;
- yylval.symbol = Symbol::find(token(1, cur - tok - 2));
- return ID;
- }
yy163:
- YYCTXMARKER = YYCURSOR + 1;
++YYCURSOR;
- if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
- yych = *YYCURSOR;
yy164:
- if (yych <= '9') {
- if (yych <= ' ') {
- if (yych == '\t') goto yy168;
- if (yych <= 0x1F) goto yy167;
- goto yy168;
- } else {
- if (yych == ',') goto yy169;
- if (yych <= '/') goto yy167;
- goto yy163;
- }
- } else {
- if (yych <= 'Z') {
- if (yych <= '<') goto yy167;
- if (yych <= '>') goto yy169;
- if (yych <= '@') goto yy167;
- goto yy163;
- } else {
- if (yych <= '_') {
- if (yych <= '^') goto yy167;
- goto yy163;
- } else {
- if (yych <= '`') goto yy167;
- if (yych <= 'z') goto yy163;
- goto yy167;
- }
- }
- }
-yy165:
YYCURSOR = YYCTXMARKER;
{
if (!FFlag) {
return STRING;
}
}
-yy166:
- YYCTXMARKER = YYCURSOR + 1;
- yych = *++YYCURSOR;
- if (yych == '2') goto yy176;
- goto yy164;
-yy167:
- yych = *++YYCURSOR;
- goto yy165;
-yy168:
+yy165:
yych = *++YYCURSOR;
- goto yy174;
-yy169:
+ goto yy184;
+yy166:
++YYCURSOR;
-yy170:
+yy167:
YYCURSOR = YYCTXMARKER;
{
cur = ptr > tok ? ptr - 1 : cursor;
yylval.symbol = Symbol::find(token());
return ID;
}
-yy171:
- ++YYCURSOR;
- YYCURSOR = YYCTXMARKER;
- {
- cur = ptr > tok ? ptr - 1 : cursor;
- yylval.symbol = Symbol::find(token());
- return FFlag ? FID : ID;
- }
-yy173:
+yy168:
+ YYCTXMARKER = YYCURSOR + 1;
++YYCURSOR;
- if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
-yy174:
- if (yybm[0+yych] & 16) {
- goto yy173;
+yy169:
+ if (yych <= '9') {
+ if (yych <= ' ') {
+ if (yych == '\t') goto yy165;
+ if (yych <= 0x1F) goto yy163;
+ goto yy165;
+ } else {
+ if (yych == ',') goto yy166;
+ if (yych <= '/') goto yy163;
+ goto yy168;
+ }
+ } else {
+ if (yych <= 'Z') {
+ if (yych <= '<') goto yy163;
+ if (yych <= '>') goto yy166;
+ if (yych <= '@') goto yy163;
+ goto yy168;
+ } else {
+ if (yych <= '_') {
+ if (yych <= '^') goto yy163;
+ goto yy168;
+ } else {
+ if (yych <= '`') goto yy163;
+ if (yych <= 'z') goto yy168;
+ goto yy163;
+ }
+ }
}
- if (yych == ',') goto yy175;
- if (yych <= '<') goto yy171;
- if (yych >= '?') goto yy171;
-yy175:
+yy170:
+ YYCTXMARKER = YYCURSOR + 1;
yych = *++YYCURSOR;
- goto yy170;
-yy176:
+ if (yych != '2') goto yy169;
YYCTXMARKER = YYCURSOR + 1;
yych = *++YYCURSOR;
- if (yych != 'c') goto yy164;
+ if (yych != 'c') goto yy169;
YYCTXMARKER = YYCURSOR + 1;
yych = *++YYCURSOR;
- if (yych != ':') goto yy164;
+ if (yych != ':') goto yy169;
yych = *++YYCURSOR;
- if (yych <= '^') {
- if (yych <= '@') goto yy165;
- if (yych >= '[') goto yy165;
+ if (yych <= 'Z') {
+ if (yych <= '/') goto yy164;
+ if (yych <= '9') goto yy174;
+ if (yych <= '@') goto yy164;
} else {
- if (yych == '`') goto yy165;
- if (yych >= '{') goto yy165;
+ if (yych <= '_') {
+ if (yych <= '^') goto yy164;
+ } else {
+ if (yych <= '`') goto yy164;
+ if (yych >= '{') goto yy164;
+ }
}
-yy179:
+yy174:
yyaccept = 7;
YYMARKER = ++YYCURSOR;
if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
if (yych <= '@') {
if (yych <= '9') {
- if (yych >= '0') goto yy179;
+ if (yych >= '0') goto yy174;
} else {
- if (yych <= ':') goto yy183;
- if (yych >= '@') goto yy182;
+ if (yych <= ':') goto yy178;
+ if (yych >= '@') goto yy177;
}
} else {
if (yych <= '_') {
- if (yych <= 'Z') goto yy179;
- if (yych >= '_') goto yy179;
+ if (yych <= 'Z') goto yy174;
+ if (yych >= '_') goto yy174;
} else {
- if (yych <= '`') goto yy181;
- if (yych <= 'z') goto yy179;
+ if (yych <= '`') goto yy176;
+ if (yych <= 'z') goto yy174;
}
}
-yy181:
+yy176:
{
cur = cursor;
tok += 5; /* skip "re2c:" */
yylval.str = new Str(token());
return CONFIG;
}
-yy182:
+yy177:
yych = *++YYCURSOR;
- if (yych <= '^') {
- if (yych <= '@') goto yy143;
- if (yych <= 'Z') goto yy184;
- goto yy143;
+ if (yych <= 'Z') {
+ if (yych <= '/') goto yy142;
+ if (yych <= '9') goto yy179;
+ if (yych <= '@') goto yy142;
+ goto yy179;
} else {
- if (yych == '`') goto yy143;
- if (yych <= 'z') goto yy184;
- goto yy143;
+ if (yych <= '_') {
+ if (yych <= '^') goto yy142;
+ goto yy179;
+ } else {
+ if (yych <= '`') goto yy142;
+ if (yych <= 'z') goto yy179;
+ goto yy142;
+ }
}
-yy183:
+yy178:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- if (yych <= '^') {
- if (yych <= '@') goto yy143;
- if (yych <= 'Z') goto yy179;
- goto yy143;
+ if (yych <= 'Z') {
+ if (yych <= '/') goto yy142;
+ if (yych <= '9') goto yy174;
+ if (yych <= '@') goto yy142;
+ goto yy174;
} else {
- if (yych == '`') goto yy143;
- if (yych <= 'z') goto yy179;
- goto yy143;
+ if (yych <= '_') {
+ if (yych <= '^') goto yy142;
+ goto yy174;
+ } else {
+ if (yych <= '`') goto yy142;
+ if (yych <= 'z') goto yy174;
+ goto yy142;
+ }
}
-yy184:
+yy179:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
if (yych <= 'Z') {
- if (yych <= '/') goto yy181;
- if (yych <= '9') goto yy184;
- if (yych <= '@') goto yy181;
- goto yy184;
+ if (yych <= '/') goto yy176;
+ if (yych <= '9') goto yy179;
+ if (yych <= '@') goto yy176;
+ goto yy179;
} else {
if (yych <= '_') {
- if (yych <= '^') goto yy181;
- goto yy184;
+ if (yych <= '^') goto yy176;
+ goto yy179;
} else {
- if (yych <= '`') goto yy181;
- if (yych <= 'z') goto yy184;
- goto yy181;
+ if (yych <= '`') goto yy176;
+ if (yych <= 'z') goto yy179;
+ goto yy176;
}
}
+yy181:
+ ++YYCURSOR;
+ YYCURSOR = YYCTXMARKER;
+ {
+ cur = ptr > tok ? ptr - 1 : cursor;
+ yylval.symbol = Symbol::find(token());
+ return FFlag ? FID : ID;
+ }
+yy183:
+ ++YYCURSOR;
+ if (YYLIMIT <= YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+yy184:
+ if (yybm[0+yych] & 16) {
+ goto yy183;
+ }
+ if (yych == ',') goto yy185;
+ if (yych <= '<') goto yy181;
+ if (yych >= '?') goto yy181;
+yy185:
+ yych = *++YYCURSOR;
+ goto yy167;
yy186:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
if (yybm[0+yych] & 32) {
goto yy186;
}
- if (yych <= '\n') goto yy143;
+ if (yych <= '\n') goto yy142;
if (yych <= '\\') goto yy190;
goto yy191;
yy188:
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
if (yych <= '[') {
- if (yych == '\n') goto yy143;
+ if (yych == '\n') goto yy142;
goto yy188;
} else {
if (yych <= '\\') goto yy193;
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- if (yych == '\n') goto yy143;
+ if (yych == '\n') goto yy142;
goto yy186;
yy191:
++YYCURSOR;
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- if (yych == '\n') goto yy143;
+ if (yych == '\n') goto yy142;
goto yy188;
yy194:
++YYCURSOR;
yy200:
if (yych <= '9') {
if (yych <= '\t') {
- if (yych <= 0x08) goto yy143;
+ if (yych <= 0x08) goto yy142;
goto yy199;
} else {
if (yych == ' ') goto yy199;
- goto yy143;
+ goto yy142;
}
} else {
if (yych <= '=') {
if (yych <= ':') goto yy204;
- if (yych <= '<') goto yy143;
+ if (yych <= '<') goto yy142;
goto yy203;
} else {
- if (yych != '{') goto yy143;
+ if (yych != '{') goto yy142;
}
}
yy201:
yy203:
yych = *++YYCURSOR;
if (yych == '>') goto yy201;
- goto yy143;
+ goto yy142;
yy204:
yych = *++YYCURSOR;
if (yych == '=') goto yy201;
- goto yy143;
+ goto yy142;
yy205:
++YYCURSOR;
if ((yych = *YYCURSOR) == '>') goto yy207;
if (yybm[0+yych] & 64) {
goto yy215;
}
- if (yych <= '\n') goto yy143;
+ if (yych <= '\n') goto yy142;
if (yych <= '\'') goto yy218;
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- if (yych == '\n') goto yy143;
+ if (yych == '\n') goto yy142;
goto yy215;
yy218:
++YYCURSOR;
if (yybm[0+yych] & 128) {
goto yy220;
}
- if (yych <= '\n') goto yy143;
+ if (yych <= '\n') goto yy142;
if (yych <= '"') goto yy223;
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- if (yych == '\n') goto yy143;
+ if (yych == '\n') goto yy142;
goto yy220;
yy223:
++YYCURSOR;
yych = *YYCURSOR;
if (yych <= 0x1F) {
if (yych == '\t') goto yy226;
- goto yy143;
+ goto yy142;
} else {
if (yych <= ' ') goto yy226;
- if (yych != '#') goto yy143;
+ if (yych != '#') goto yy142;
}
yy228:
++YYCURSOR;
yych = *YYCURSOR;
if (yych <= 0x1F) {
if (yych == '\t') goto yy228;
- goto yy143;
+ goto yy142;
} else {
if (yych <= ' ') goto yy228;
- if (yych != 'l') goto yy143;
+ if (yych != 'l') goto yy142;
}
yych = *++YYCURSOR;
- if (yych != 'i') goto yy143;
+ if (yych != 'i') goto yy142;
yych = *++YYCURSOR;
- if (yych != 'n') goto yy143;
+ if (yych != 'n') goto yy142;
yych = *++YYCURSOR;
- if (yych != 'e') goto yy143;
+ if (yych != 'e') goto yy142;
yych = *++YYCURSOR;
if (yych <= '0') goto yy235;
- if (yych <= '9') goto yy143;
+ if (yych <= '9') goto yy142;
goto yy235;
yy234:
YYCTXMARKER = YYCURSOR + 1;
yy235:
if (yych <= 0x1F) {
if (yych == '\t') goto yy234;
- goto yy143;
+ goto yy142;
} else {
if (yych <= ' ') goto yy234;
- if (yych <= '0') goto yy143;
- if (yych >= ':') goto yy143;
+ if (yych <= '0') goto yy142;
+ if (yych >= ':') goto yy142;
}
yy236:
++YYCURSOR;
yych = *YYCURSOR;
if (yych <= '\r') {
if (yych <= '\t') {
- if (yych <= 0x08) goto yy143;
+ if (yych <= 0x08) goto yy142;
} else {
if (yych <= '\n') goto yy240;
- if (yych <= '\f') goto yy143;
+ if (yych <= '\f') goto yy142;
goto yy242;
}
} else {
if (yych <= ' ') {
- if (yych <= 0x1F) goto yy143;
+ if (yych <= 0x1F) goto yy142;
} else {
- if (yych <= '/') goto yy143;
+ if (yych <= '/') goto yy142;
if (yych <= '9') goto yy236;
- goto yy143;
+ goto yy142;
}
}
yy238:
yych = *YYCURSOR;
if (yych <= 0x1F) {
if (yych == '\t') goto yy238;
- goto yy143;
+ goto yy142;
} else {
if (yych <= ' ') goto yy238;
if (yych == '"') goto yy243;
- goto yy143;
+ goto yy142;
}
yy240:
++YYCURSOR;
yy242:
yych = *++YYCURSOR;
if (yych == '\n') goto yy240;
- goto yy143;
+ goto yy142;
yy243:
++YYCURSOR;
if ((YYLIMIT - YYCURSOR) < 3) YYFILL(3);
yych = *YYCURSOR;
if (yych <= '!') {
- if (yych == '\n') goto yy143;
+ if (yych == '\n') goto yy142;
goto yy243;
} else {
if (yych <= '"') goto yy246;
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- if (yych == '\n') goto yy143;
+ if (yych == '\n') goto yy142;
goto yy243;
yy246:
yych = *++YYCURSOR;
if (yych == '\n') goto yy240;
if (yych == '\r') goto yy242;
- goto yy143;
+ goto yy142;
yy247:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);