-/* Generated by re2c 0.13.4.dev on Sat Mar 22 17:57:39 2008 */
+/* Generated by re2c 0.13.4.dev on Mon Mar 24 01:44:05 2008 */
/* $Id$ */
#include <stdlib.h>
#include <string.h>
case 'g': goto yy20;
case 'i': goto yy19;
case 'm': goto yy21;
- case 'r': goto yy22;
+ case 'r': goto yy23;
case 't': goto yy18;
+ case 'u': goto yy22;
default: goto yy13;
}
yy18:
yych = *++YYCURSOR;
- if (yych == 'y') goto yy69;
+ if (yych == 'y') goto yy78;
goto yy13;
yy19:
yych = *++YYCURSOR;
- if (yych == 'g') goto yy58;
+ if (yych == 'g') goto yy67;
goto yy13;
yy20:
yych = *++YYCURSOR;
- if (yych == 'e') goto yy45;
+ if (yych == 'e') goto yy54;
goto yy13;
yy21:
yych = *++YYCURSOR;
- if (yych == 'a') goto yy37;
+ if (yych == 'a') goto yy46;
goto yy13;
yy22:
yych = *++YYCURSOR;
- if (yych != 'e') goto yy13;
+ if (yych == 's') goto yy38;
+ goto yy13;
+yy23:
yych = *++YYCURSOR;
- if (yych == '2') goto yy25;
- if (yych != 'p') goto yy13;
+ if (yych == 'e') goto yy24;
+ if (yych == 'u') goto yy25;
+ goto yy13;
+yy24:
yych = *++YYCURSOR;
- if (yych == 'e') goto yy28;
+ if (yych == '2') goto yy35;
goto yy13;
yy25:
+ yych = *++YYCURSOR;
+ if (yych != 'l') goto yy13;
+ yych = *++YYCURSOR;
+ if (yych != 'e') goto yy13;
+ yych = *++YYCURSOR;
+ if (yych != 's') goto yy13;
+ yych = *++YYCURSOR;
+ if (yych != ':') goto yy13;
+ yych = *++YYCURSOR;
+ if (yych != 'r') goto yy13;
+ yych = *++YYCURSOR;
+ if (yych != 'e') goto yy13;
+ yych = *++YYCURSOR;
+ if (yych != '2') goto yy13;
yych = *++YYCURSOR;
if (yych != 'c') goto yy13;
++YYCURSOR;
{
mapCodeName.clear();
}
+ else
+ {
+ fatal("found 'reules:re2c' block without -r flag");
+ }
+ if (bUsedYYMaxFill && bSinglePass)
+ {
+ fatal("found scanner block after YYMAXFILL declaration");
+ }
+ tok = cursor;
+ RETURN(Rules);
+ }
+yy35:
+ yych = *++YYCURSOR;
+ if (yych != 'c') goto yy13;
+ ++YYCURSOR;
+ {
+ if (rFlag)
+ {
+ fatal("found standard 're2c' block while using -r flag");
+ }
if (bUsedYYMaxFill && bSinglePass)
{
fatal("found scanner block after YYMAXFILL declaration");
tok = cursor;
RETURN(Parse);
}
-yy28:
+yy38:
yych = *++YYCURSOR;
- if (yych != 'a') goto yy13;
- yych = *++YYCURSOR;
- if (yych != 't') goto yy13;
+ if (yych != 'e') goto yy13;
yych = *++YYCURSOR;
if (yych != ':') goto yy13;
yych = *++YYCURSOR;
{
if (!rFlag)
{
- fatal("Cannot reuse scanner definition without -r flag");
+ fatal("found 'use:re2c' block without -r flag");
}
next_label = 0;
next_fill_index = 0;
}
if (!DFlag)
{
- out.write((const char*)(tok), (const char*)(&cursor[-14]) - (const char*)(tok));
+ out.write((const char*)(tok), (const char*)(&cursor[-11]) - (const char*)(tok));
}
tok = cursor;
RETURN(Reuse);
}
-yy37:
+yy46:
yych = *++YYCURSOR;
if (yych != 'x') goto yy13;
yych = *++YYCURSOR;
bUsedYYMaxFill = true;
goto echo;
}
-yy45:
+yy54:
yych = *++YYCURSOR;
if (yych != 't') goto yy13;
yych = *++YYCURSOR;
ignore_eoc = true;
goto echo;
}
-yy58:
+yy67:
yych = *++YYCURSOR;
if (yych != 'n') goto yy13;
yych = *++YYCURSOR;
ignore_eoc = true;
goto echo;
}
-yy69:
+yy78:
yych = *++YYCURSOR;
if (yych != 'p') goto yy13;
yych = *++YYCURSOR;
if (yych <= '/') {
if (yych <= '"') {
if (yych <= '\f') {
- if (yych <= 0x08) goto yy108;
- if (yych <= '\t') goto yy103;
- if (yych <= '\n') goto yy105;
- goto yy108;
+ if (yych <= 0x08) goto yy117;
+ if (yych <= '\t') goto yy112;
+ if (yych <= '\n') goto yy114;
+ goto yy117;
} else {
if (yych <= 0x1F) {
- if (yych <= '\r') goto yy107;
- goto yy108;
+ if (yych <= '\r') goto yy116;
+ goto yy117;
} else {
- if (yych <= ' ') goto yy103;
- if (yych <= '!') goto yy108;
- goto yy89;
+ if (yych <= ' ') goto yy112;
+ if (yych <= '!') goto yy117;
+ goto yy98;
}
}
} else {
if (yych <= '*') {
- if (yych <= '&') goto yy108;
- if (yych <= '\'') goto yy91;
- if (yych <= ')') goto yy96;
- goto yy87;
+ if (yych <= '&') goto yy117;
+ if (yych <= '\'') goto yy100;
+ if (yych <= ')') goto yy105;
+ goto yy96;
} else {
if (yych <= ',') {
- if (yych <= '+') goto yy97;
- goto yy96;
+ if (yych <= '+') goto yy106;
+ goto yy105;
} else {
- if (yych <= '-') goto yy108;
- if (yych <= '.') goto yy101;
- goto yy85;
+ if (yych <= '-') goto yy117;
+ if (yych <= '.') goto yy110;
+ goto yy94;
}
}
}
} else {
if (yych <= '[') {
if (yych <= '<') {
- if (yych <= '9') goto yy108;
- if (yych <= ':') goto yy83;
- if (yych <= ';') goto yy96;
- goto yy95;
+ if (yych <= '9') goto yy117;
+ if (yych <= ':') goto yy92;
+ if (yych <= ';') goto yy105;
+ goto yy104;
} else {
if (yych <= '?') {
- if (yych <= '>') goto yy96;
- goto yy97;
+ if (yych <= '>') goto yy105;
+ goto yy106;
} else {
- if (yych <= '@') goto yy108;
- if (yych <= 'Z') goto yy100;
- goto yy93;
+ if (yych <= '@') goto yy117;
+ if (yych <= 'Z') goto yy109;
+ goto yy102;
}
}
} else {
if (yych <= 'q') {
if (yych <= '^') {
- if (yych <= '\\') goto yy96;
- goto yy108;
+ if (yych <= '\\') goto yy105;
+ goto yy117;
} else {
- if (yych == '`') goto yy108;
- goto yy100;
+ if (yych == '`') goto yy117;
+ goto yy109;
}
} else {
if (yych <= 'z') {
- if (yych <= 'r') goto yy99;
- goto yy100;
+ if (yych <= 'r') goto yy108;
+ goto yy109;
} else {
- if (yych <= '{') goto yy81;
- if (yych <= '|') goto yy96;
- goto yy108;
+ if (yych <= '{') goto yy90;
+ if (yych <= '|') goto yy105;
+ goto yy117;
}
}
}
}
-yy81:
+yy90:
yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
if (yych <= '@') {
if (yych <= '/') {
- if (yych == ',') goto yy178;
+ if (yych == ',') goto yy187;
} else {
- if (yych <= '0') goto yy175;
- if (yych <= '9') goto yy176;
+ if (yych <= '0') goto yy184;
+ if (yych <= '9') goto yy185;
}
} else {
if (yych <= '_') {
- if (yych <= 'Z') goto yy173;
- if (yych >= '_') goto yy173;
+ if (yych <= 'Z') goto yy182;
+ if (yych >= '_') goto yy182;
} else {
- if (yych <= '`') goto yy82;
- if (yych <= 'z') goto yy173;
+ if (yych <= '`') goto yy91;
+ if (yych <= 'z') goto yy182;
}
}
-yy82:
+yy91:
{
depth = 1;
goto code;
}
-yy83:
+yy92:
YYCTXMARKER = YYCURSOR + 1;
++YYCURSOR;
- if ((yych = *YYCURSOR) == '=') goto yy169;
-yy84:
+ if ((yych = *YYCURSOR) == '=') goto yy178;
+yy93:
{
std::ostringstream msg;
msg << "unexpected character: ";
fatal(msg.str().c_str());
goto scan;
}
-yy85:
+yy94:
++YYCURSOR;
- if ((yych = *YYCURSOR) == '*') goto yy167;
-yy86:
+ if ((yych = *YYCURSOR) == '*') goto yy176;
+yy95:
{
RETURN(*tok);
}
-yy87:
+yy96:
++YYCURSOR;
- if ((yych = *YYCURSOR) == '/') goto yy165;
+ if ((yych = *YYCURSOR) == '/') goto yy174;
{
yylval.op = *tok;
RETURN(STAR);
}
-yy89:
+yy98:
yyaccept = 1;
yych = *(YYMARKER = ++YYCURSOR);
- if (yych != '\n') goto yy161;
-yy90:
+ if (yych != '\n') goto yy170;
+yy99:
{
fatal("unterminated string constant (missing \")");
}
-yy91:
+yy100:
yyaccept = 2;
yych = *(YYMARKER = ++YYCURSOR);
- if (yych != '\n') goto yy156;
-yy92:
+ if (yych != '\n') goto yy165;
+yy101:
{
fatal("unterminated string constant (missing ')");
}
-yy93:
+yy102:
yyaccept = 3;
yych = *(YYMARKER = ++YYCURSOR);
- if (yych == '\n') goto yy94;
- if (yych == '^') goto yy147;
- goto yy146;
-yy94:
+ if (yych == '\n') goto yy103;
+ if (yych == '^') goto yy156;
+ goto yy155;
+yy103:
{
fatal("unterminated range (missing ])");
}
-yy95:
+yy104:
yyaccept = 4;
yych = *(YYMARKER = ++YYCURSOR);
- if (yych == '!') goto yy136;
- if (yych == '>') goto yy138;
- goto yy86;
-yy96:
+ if (yych == '!') goto yy145;
+ if (yych == '>') goto yy147;
+ goto yy95;
+yy105:
yych = *++YYCURSOR;
- goto yy86;
-yy97:
+ goto yy95;
+yy106:
++YYCURSOR;
{
yylval.op = *tok;
RETURN(CLOSE);
}
-yy99:
+yy108:
YYCTXMARKER = YYCURSOR + 1;
yych = *++YYCURSOR;
- if (yych == 'e') goto yy124;
- goto yy113;
-yy100:
+ if (yych == 'e') goto yy133;
+ goto yy122;
+yy109:
YYCTXMARKER = YYCURSOR + 1;
yych = *++YYCURSOR;
- goto yy113;
-yy101:
+ goto yy122;
+yy110:
++YYCURSOR;
{
cur = cursor;
yylval.regexp = mkDot();
return RANGE;
}
-yy103:
+yy112:
++YYCURSOR;
yych = *YYCURSOR;
- goto yy111;
-yy104:
+ goto yy120;
+yy113:
{
goto scan;
}
-yy105:
+yy114:
++YYCURSOR;
-yy106:
+yy115:
{
if(cursor == eof) RETURN(0);
pos = cursor;
cline++;
goto scan;
}
-yy107:
+yy116:
yych = *++YYCURSOR;
- if (yych == '\n') goto yy109;
- goto yy84;
-yy108:
+ if (yych == '\n') goto yy118;
+ goto yy93;
+yy117:
yych = *++YYCURSOR;
- goto yy84;
-yy109:
+ goto yy93;
+yy118:
yych = *++YYCURSOR;
- goto yy106;
-yy110:
+ goto yy115;
+yy119:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy111:
+yy120:
if (yybm[0+yych] & 4) {
- goto yy110;
+ goto yy119;
}
- goto yy104;
-yy112:
+ goto yy113;
+yy121:
YYCTXMARKER = YYCURSOR + 1;
++YYCURSOR;
if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
-yy113:
+yy122:
if (yybm[0+yych] & 8) {
- goto yy112;
+ goto yy121;
}
if (yych <= ' ') {
- if (yych == '\t') goto yy116;
- if (yych <= 0x1F) goto yy115;
- goto yy116;
+ if (yych == '\t') goto yy125;
+ if (yych <= 0x1F) goto yy124;
+ goto yy125;
} else {
if (yych <= ',') {
- if (yych <= '+') goto yy115;
- goto yy117;
+ if (yych <= '+') goto yy124;
+ goto yy126;
} else {
- if (yych <= '<') goto yy115;
- if (yych <= '>') goto yy117;
- goto yy115;
+ if (yych <= '<') goto yy124;
+ if (yych <= '>') goto yy126;
+ goto yy124;
}
}
-yy114:
+yy123:
YYCURSOR = YYCTXMARKER;
{
if (!FFlag) {
return STRING;
}
}
-yy115:
+yy124:
yych = *++YYCURSOR;
- goto yy114;
-yy116:
+ goto yy123;
+yy125:
yych = *++YYCURSOR;
- goto yy122;
-yy117:
+ goto yy131;
+yy126:
++YYCURSOR;
-yy118:
+yy127:
YYCURSOR = YYCTXMARKER;
{
cur = ptr > tok ? ptr - 1 : cursor;
yylval.symbol = Symbol::find(token());
return ID;
}
-yy119:
+yy128:
++YYCURSOR;
YYCURSOR = YYCTXMARKER;
{
return ID;
}
}
-yy121:
+yy130:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy122:
+yy131:
if (yych <= ' ') {
- if (yych == '\t') goto yy121;
- if (yych <= 0x1F) goto yy119;
- goto yy121;
+ if (yych == '\t') goto yy130;
+ if (yych <= 0x1F) goto yy128;
+ goto yy130;
} else {
if (yych <= ',') {
- if (yych <= '+') goto yy119;
+ if (yych <= '+') goto yy128;
} else {
- if (yych <= '<') goto yy119;
- if (yych >= '?') goto yy119;
+ if (yych <= '<') goto yy128;
+ if (yych >= '?') goto yy128;
}
}
yych = *++YYCURSOR;
- goto yy118;
-yy124:
+ goto yy127;
+yy133:
YYCTXMARKER = YYCURSOR + 1;
yych = *++YYCURSOR;
- if (yych != '2') goto yy113;
+ if (yych != '2') goto yy122;
YYCTXMARKER = YYCURSOR + 1;
yych = *++YYCURSOR;
- if (yych != 'c') goto yy113;
+ if (yych != 'c') goto yy122;
YYCTXMARKER = YYCURSOR + 1;
yych = *++YYCURSOR;
- if (yych != ':') goto yy113;
+ if (yych != ':') goto yy122;
yych = *++YYCURSOR;
if (yych <= '^') {
- if (yych <= '@') goto yy114;
- if (yych >= '[') goto yy114;
+ if (yych <= '@') goto yy123;
+ if (yych >= '[') goto yy123;
} else {
- if (yych == '`') goto yy114;
- if (yych >= '{') goto yy114;
+ if (yych == '`') goto yy123;
+ if (yych >= '{') goto yy123;
}
-yy128:
+yy137:
yyaccept = 5;
YYMARKER = ++YYCURSOR;
if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
if (yych <= '@') {
if (yych <= '9') {
- if (yych >= '0') goto yy128;
+ if (yych >= '0') goto yy137;
} else {
- if (yych <= ':') goto yy133;
- if (yych >= '@') goto yy131;
+ if (yych <= ':') goto yy142;
+ if (yych >= '@') goto yy140;
}
} else {
if (yych <= '_') {
- if (yych <= 'Z') goto yy128;
- if (yych >= '_') goto yy128;
+ if (yych <= 'Z') goto yy137;
+ if (yych >= '_') goto yy137;
} else {
- if (yych <= '`') goto yy130;
- if (yych <= 'z') goto yy128;
+ if (yych <= '`') goto yy139;
+ if (yych <= 'z') goto yy137;
}
}
-yy130:
+yy139:
{
cur = cursor;
tok+= 5; /* skip "re2c:" */
yylval.str = new Str(token());
return CONFIG;
}
-yy131:
+yy140:
yych = *++YYCURSOR;
if (yych <= '^') {
- if (yych <= '@') goto yy132;
- if (yych <= 'Z') goto yy134;
+ if (yych <= '@') goto yy141;
+ if (yych <= 'Z') goto yy143;
} else {
- if (yych == '`') goto yy132;
- if (yych <= 'z') goto yy134;
+ if (yych == '`') goto yy141;
+ if (yych <= 'z') goto yy143;
}
-yy132:
+yy141:
YYCURSOR = YYMARKER;
if (yyaccept <= 3) {
if (yyaccept <= 1) {
if (yyaccept <= 0) {
- goto yy82;
+ goto yy91;
} else {
- goto yy90;
+ goto yy99;
}
} else {
if (yyaccept <= 2) {
- goto yy92;
+ goto yy101;
} else {
- goto yy94;
+ goto yy103;
}
}
} else {
if (yyaccept <= 5) {
if (yyaccept <= 4) {
- goto yy86;
+ goto yy95;
} else {
- goto yy130;
+ goto yy139;
}
} else {
- goto yy179;
+ goto yy188;
}
}
-yy133:
+yy142:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
if (yych <= '^') {
- if (yych <= '@') goto yy132;
- if (yych <= 'Z') goto yy128;
- goto yy132;
+ if (yych <= '@') goto yy141;
+ if (yych <= 'Z') goto yy137;
+ goto yy141;
} else {
- if (yych == '`') goto yy132;
- if (yych <= 'z') goto yy128;
- goto yy132;
+ if (yych == '`') goto yy141;
+ if (yych <= 'z') goto yy137;
+ goto yy141;
}
-yy134:
+yy143:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
if (yych <= 'Z') {
- if (yych <= '/') goto yy130;
- if (yych <= '9') goto yy134;
- if (yych <= '@') goto yy130;
- goto yy134;
+ if (yych <= '/') goto yy139;
+ if (yych <= '9') goto yy143;
+ if (yych <= '@') goto yy139;
+ goto yy143;
} else {
if (yych <= '_') {
- if (yych <= '^') goto yy130;
- goto yy134;
+ if (yych <= '^') goto yy139;
+ goto yy143;
} else {
- if (yych <= '`') goto yy130;
- if (yych <= 'z') goto yy134;
- goto yy130;
+ if (yych <= '`') goto yy139;
+ if (yych <= 'z') goto yy143;
+ goto yy139;
}
}
-yy136:
+yy145:
++YYCURSOR;
{
RETURN(SETUP);
}
-yy138:
+yy147:
YYCTXMARKER = YYCURSOR + 1;
yych = *++YYCURSOR;
- goto yy140;
-yy139:
+ goto yy149;
+yy148:
++YYCURSOR;
if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
-yy140:
+yy149:
if (yych <= '9') {
if (yych <= '\t') {
- if (yych <= 0x08) goto yy132;
- goto yy139;
+ if (yych <= 0x08) goto yy141;
+ goto yy148;
} else {
- if (yych == ' ') goto yy139;
- goto yy132;
+ if (yych == ' ') goto yy148;
+ goto yy141;
}
} else {
if (yych <= '=') {
- if (yych <= ':') goto yy144;
- if (yych <= '<') goto yy132;
- goto yy143;
+ if (yych <= ':') goto yy153;
+ if (yych <= '<') goto yy141;
+ goto yy152;
} else {
- if (yych != '{') goto yy132;
+ if (yych != '{') goto yy141;
}
}
-yy141:
+yy150:
++YYCURSOR;
YYCURSOR = YYCTXMARKER;
{
RETURN(NOCOND);
}
-yy143:
+yy152:
yych = *++YYCURSOR;
- if (yych == '>') goto yy141;
- goto yy132;
-yy144:
+ if (yych == '>') goto yy150;
+ goto yy141;
+yy153:
yych = *++YYCURSOR;
- if (yych == '=') goto yy141;
- goto yy132;
-yy145:
+ if (yych == '=') goto yy150;
+ goto yy141;
+yy154:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy146:
+yy155:
if (yybm[0+yych] & 16) {
- goto yy145;
+ goto yy154;
}
- if (yych <= '[') goto yy132;
- if (yych <= '\\') goto yy149;
- goto yy150;
-yy147:
+ if (yych <= '[') goto yy141;
+ if (yych <= '\\') goto yy158;
+ goto yy159;
+yy156:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
if (yych <= '[') {
- if (yych == '\n') goto yy132;
- goto yy147;
+ if (yych == '\n') goto yy141;
+ goto yy156;
} else {
- if (yych <= '\\') goto yy152;
- if (yych <= ']') goto yy153;
- goto yy147;
+ if (yych <= '\\') goto yy161;
+ if (yych <= ']') goto yy162;
+ goto yy156;
}
-yy149:
+yy158:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- if (yych == '\n') goto yy132;
- goto yy145;
-yy150:
+ if (yych == '\n') goto yy141;
+ goto yy154;
+yy159:
++YYCURSOR;
{
cur = cursor;
yylval.regexp = ranToRE(token());
return RANGE;
}
-yy152:
+yy161:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- if (yych == '\n') goto yy132;
- goto yy147;
-yy153:
+ if (yych == '\n') goto yy141;
+ goto yy156;
+yy162:
++YYCURSOR;
{
cur = cursor;
yylval.regexp = invToRE(token());
return RANGE;
}
-yy155:
+yy164:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy156:
+yy165:
if (yybm[0+yych] & 32) {
- goto yy155;
+ goto yy164;
}
- if (yych <= '&') goto yy132;
- if (yych <= '\'') goto yy158;
+ if (yych <= '&') goto yy141;
+ if (yych <= '\'') goto yy167;
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- if (yych == '\n') goto yy132;
- goto yy155;
-yy158:
+ if (yych == '\n') goto yy141;
+ goto yy164;
+yy167:
++YYCURSOR;
{
cur = cursor;
}
return STRING;
}
-yy160:
+yy169:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy161:
+yy170:
if (yybm[0+yych] & 64) {
- goto yy160;
+ goto yy169;
}
- if (yych <= '!') goto yy132;
- if (yych <= '"') goto yy163;
+ if (yych <= '!') goto yy141;
+ if (yych <= '"') goto yy172;
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- if (yych == '\n') goto yy132;
- goto yy160;
-yy163:
+ if (yych == '\n') goto yy141;
+ goto yy169;
+yy172:
++YYCURSOR;
{
cur = cursor;
}
return STRING;
}
-yy165:
+yy174:
++YYCURSOR;
{
tok = cursor;
RETURN(0);
}
-yy167:
+yy176:
++YYCURSOR;
{
depth = 1;
goto comment;
}
-yy169:
+yy178:
++YYCURSOR;
- if ((yych = *YYCURSOR) == '>') goto yy171;
+ if ((yych = *YYCURSOR) == '>') goto yy180;
{
cur = cursor;
tok+= 2; /* skip ":=" */
depth = 0;
goto code;
}
-yy171:
+yy180:
++YYCURSOR;
YYCURSOR = YYCTXMARKER;
{
RETURN(*tok);
}
-yy173:
+yy182:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
if (yych <= '^') {
if (yych <= '9') {
- if (yych <= '/') goto yy132;
- goto yy173;
+ if (yych <= '/') goto yy141;
+ goto yy182;
} else {
- if (yych <= '@') goto yy132;
- if (yych <= 'Z') goto yy173;
- goto yy132;
+ if (yych <= '@') goto yy141;
+ if (yych <= 'Z') goto yy182;
+ goto yy141;
}
} else {
if (yych <= 'z') {
- if (yych == '`') goto yy132;
- goto yy173;
+ if (yych == '`') goto yy141;
+ goto yy182;
} else {
- if (yych == '}') goto yy192;
- goto yy132;
+ if (yych == '}') goto yy201;
+ goto yy141;
}
}
-yy175:
+yy184:
yych = *++YYCURSOR;
- if (yych == ',') goto yy189;
- goto yy177;
-yy176:
+ if (yych == ',') goto yy198;
+ goto yy186;
+yy185:
++YYCURSOR;
if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
-yy177:
+yy186:
if (yybm[0+yych] & 128) {
- goto yy176;
+ goto yy185;
}
- if (yych == ',') goto yy182;
- if (yych == '}') goto yy180;
- goto yy132;
-yy178:
+ if (yych == ',') goto yy191;
+ if (yych == '}') goto yy189;
+ goto yy141;
+yy187:
++YYCURSOR;
-yy179:
+yy188:
{
fatal("illegal closure form, use '{n}', '{n,}', '{n,m}' where n and m are numbers");
}
-yy180:
+yy189:
++YYCURSOR;
{
yylval.extop.minsize = atoi((char *)tok+1);
yylval.extop.maxsize = atoi((char *)tok+1);
RETURN(CLOSESIZE);
}
-yy182:
+yy191:
yyaccept = 6;
yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '/') goto yy179;
- if (yych <= '9') goto yy185;
- if (yych != '}') goto yy179;
+ if (yych <= '/') goto yy188;
+ if (yych <= '9') goto yy194;
+ if (yych != '}') goto yy188;
++YYCURSOR;
{
yylval.extop.minsize = atoi((char *)tok+1);
yylval.extop.maxsize = -1;
RETURN(CLOSESIZE);
}
-yy185:
+yy194:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- if (yych <= '/') goto yy132;
- if (yych <= '9') goto yy185;
- if (yych != '}') goto yy132;
+ if (yych <= '/') goto yy141;
+ if (yych <= '9') goto yy194;
+ if (yych != '}') goto yy141;
++YYCURSOR;
{
yylval.extop.minsize = atoi((char *)tok+1);
yylval.extop.maxsize = MAX(yylval.extop.minsize,atoi(strchr((char *)tok, ',')+1));
RETURN(CLOSESIZE);
}
-yy189:
+yy198:
yyaccept = 6;
yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '/') goto yy179;
- if (yych <= '9') goto yy185;
- if (yych != '}') goto yy179;
+ if (yych <= '/') goto yy188;
+ if (yych <= '9') goto yy194;
+ if (yych != '}') goto yy188;
++YYCURSOR;
{
yylval.op = '*';
RETURN(CLOSE);
}
-yy192:
+yy201:
++YYCURSOR;
{
if (!FFlag) {
yych = *YYCURSOR;
if (yych <= '&') {
if (yych <= '\n') {
- if (yych <= 0x00) goto yy202;
- if (yych <= '\t') goto yy204;
- goto yy200;
+ if (yych <= 0x00) goto yy211;
+ if (yych <= '\t') goto yy213;
+ goto yy209;
} else {
- if (yych == '"') goto yy206;
- goto yy204;
+ if (yych == '"') goto yy215;
+ goto yy213;
}
} else {
if (yych <= '{') {
- if (yych <= '\'') goto yy207;
- if (yych <= 'z') goto yy204;
- goto yy198;
+ if (yych <= '\'') goto yy216;
+ if (yych <= 'z') goto yy213;
+ goto yy207;
} else {
- if (yych != '}') goto yy204;
+ if (yych != '}') goto yy213;
}
}
++YYCURSOR;
}
goto code;
}
-yy198:
+yy207:
++YYCURSOR;
{
if (depth == 0)
}
goto code;
}
-yy200:
+yy209:
YYCTXMARKER = YYCURSOR + 1;
++YYCURSOR;
if ((yych = *YYCURSOR) <= '\f') {
- if (yych <= 0x08) goto yy201;
- if (yych <= '\n') goto yy215;
+ if (yych <= 0x08) goto yy210;
+ if (yych <= '\n') goto yy224;
} else {
- if (yych <= '\r') goto yy215;
- if (yych == ' ') goto yy215;
+ if (yych <= '\r') goto yy224;
+ if (yych == ' ') goto yy224;
}
-yy201:
+yy210:
{
if (depth == 0)
{
cline++;
goto code;
}
-yy202:
+yy211:
++YYCURSOR;
{
if (cursor == eof)
}
goto code;
}
-yy204:
+yy213:
++YYCURSOR;
-yy205:
+yy214:
{
goto code;
}
-yy206:
+yy215:
yych = *(YYMARKER = ++YYCURSOR);
- if (yych == '\n') goto yy205;
- goto yy213;
-yy207:
+ if (yych == '\n') goto yy214;
+ goto yy222;
+yy216:
yych = *(YYMARKER = ++YYCURSOR);
- if (yych == '\n') goto yy205;
- goto yy209;
-yy208:
+ if (yych == '\n') goto yy214;
+ goto yy218;
+yy217:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy209:
+yy218:
if (yybm[0+yych] & 64) {
- goto yy208;
+ goto yy217;
}
- if (yych <= '&') goto yy210;
- if (yych <= '\'') goto yy204;
- goto yy211;
-yy210:
+ if (yych <= '&') goto yy219;
+ if (yych <= '\'') goto yy213;
+ goto yy220;
+yy219:
YYCURSOR = YYMARKER;
- goto yy205;
-yy211:
+ goto yy214;
+yy220:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- if (yych == '\n') goto yy210;
- goto yy208;
-yy212:
+ if (yych == '\n') goto yy219;
+ goto yy217;
+yy221:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy213:
+yy222:
if (yybm[0+yych] & 128) {
- goto yy212;
+ goto yy221;
}
- if (yych <= '!') goto yy210;
- if (yych <= '"') goto yy204;
+ if (yych <= '!') goto yy219;
+ if (yych <= '"') goto yy213;
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- if (yych == '\n') goto yy210;
- goto yy212;
-yy215:
+ if (yych == '\n') goto yy219;
+ goto yy221;
+yy224:
++YYCURSOR;
YYCURSOR = YYCTXMARKER;
{
if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
if (yych <= ')') {
- if (yych == '\n') goto yy222;
- goto yy224;
+ if (yych == '\n') goto yy231;
+ goto yy233;
} else {
- if (yych <= '*') goto yy219;
- if (yych == '/') goto yy221;
- goto yy224;
+ if (yych <= '*') goto yy228;
+ if (yych == '/') goto yy230;
+ goto yy233;
}
-yy219:
+yy228:
++YYCURSOR;
- if ((yych = *YYCURSOR) == '/') goto yy227;
-yy220:
+ if ((yych = *YYCURSOR) == '/') goto yy236;
+yy229:
{
if(cursor == eof)
{
}
goto comment;
}
-yy221:
+yy230:
yych = *++YYCURSOR;
- if (yych == '*') goto yy225;
- goto yy220;
-yy222:
+ if (yych == '*') goto yy234;
+ goto yy229;
+yy231:
++YYCURSOR;
{
if(cursor == eof)
cline++;
goto comment;
}
-yy224:
+yy233:
yych = *++YYCURSOR;
- goto yy220;
-yy225:
+ goto yy229;
+yy234:
++YYCURSOR;
{
++depth;
fatal("ambiguous /* found");
goto comment;
}
-yy227:
+yy236:
++YYCURSOR;
{
if(--depth == 0)
if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
if (yych <= 0x1F) {
- if (yych != '\t') goto yy235;
+ if (yych != '\t') goto yy244;
} else {
- if (yych <= ' ') goto yy231;
- if (yych == '=') goto yy233;
- goto yy235;
+ if (yych <= ' ') goto yy240;
+ if (yych == '=') goto yy242;
+ goto yy244;
}
-yy231:
+yy240:
++YYCURSOR;
yych = *YYCURSOR;
- goto yy240;
-yy232:
+ goto yy249;
+yy241:
{
goto config;
}
-yy233:
+yy242:
++YYCURSOR;
yych = *YYCURSOR;
- goto yy238;
-yy234:
+ goto yy247;
+yy243:
{
iscfg = 2;
cur = cursor;
RETURN('=');
}
-yy235:
+yy244:
++YYCURSOR;
{
fatal("missing '='");
}
-yy237:
+yy246:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy238:
+yy247:
if (yybm[0+yych] & 128) {
- goto yy237;
+ goto yy246;
}
- goto yy234;
-yy239:
+ goto yy243;
+yy248:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy240:
- if (yych == '\t') goto yy239;
- if (yych == ' ') goto yy239;
- goto yy232;
+yy249:
+ if (yych == '\t') goto yy248;
+ if (yych == ' ') goto yy248;
+ goto yy241;
}
yych = *YYCURSOR;
if (yych <= '&') {
if (yych <= '\r') {
- if (yych <= 0x08) goto yy249;
- if (yych <= '\n') goto yy243;
- if (yych <= '\f') goto yy249;
+ if (yych <= 0x08) goto yy258;
+ if (yych <= '\n') goto yy252;
+ if (yych <= '\f') goto yy258;
} else {
if (yych <= ' ') {
- if (yych <= 0x1F) goto yy249;
+ if (yych <= 0x1F) goto yy258;
} else {
- if (yych == '"') goto yy251;
- goto yy249;
+ if (yych == '"') goto yy260;
+ goto yy258;
}
}
} else {
if (yych <= '/') {
- if (yych <= '\'') goto yy253;
- if (yych == '-') goto yy246;
- goto yy249;
+ if (yych <= '\'') goto yy262;
+ if (yych == '-') goto yy255;
+ goto yy258;
} else {
if (yych <= '9') {
- if (yych <= '0') goto yy244;
- goto yy247;
+ if (yych <= '0') goto yy253;
+ goto yy256;
} else {
- if (yych != ';') goto yy249;
+ if (yych != ';') goto yy258;
}
}
}
-yy243:
+yy252:
{
cur = cursor;
yylval.str = new Str(token());
iscfg = 0;
return VALUE;
}
-yy244:
+yy253:
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy249;
+ goto yy258;
}
-yy245:
+yy254:
{
cur = cursor;
yylval.number = atoi(token().to_string().c_str());
iscfg = 0;
return NUMBER;
}
-yy246:
+yy255:
yych = *++YYCURSOR;
- if (yych <= '0') goto yy250;
- if (yych >= ':') goto yy250;
-yy247:
+ if (yych <= '0') goto yy259;
+ if (yych >= ':') goto yy259;
+yy256:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
if (yybm[0+yych] & 4) {
- goto yy247;
+ goto yy256;
}
if (yych <= '\r') {
- if (yych <= 0x08) goto yy249;
- if (yych <= '\n') goto yy245;
- if (yych >= '\r') goto yy245;
+ if (yych <= 0x08) goto yy258;
+ if (yych <= '\n') goto yy254;
+ if (yych >= '\r') goto yy254;
} else {
if (yych <= ' ') {
- if (yych >= ' ') goto yy245;
+ if (yych >= ' ') goto yy254;
} else {
- if (yych == ';') goto yy245;
+ if (yych == ';') goto yy254;
}
}
-yy249:
+yy258:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy250:
+yy259:
if (yybm[0+yych] & 8) {
- goto yy249;
+ goto yy258;
}
- goto yy243;
-yy251:
+ goto yy252;
+yy260:
YYMARKER = ++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
if (yybm[0+yych] & 16) {
- goto yy251;
+ goto yy260;
}
if (yych <= '!') {
- if (yych == '\n') goto yy243;
- goto yy261;
+ if (yych == '\n') goto yy252;
+ goto yy270;
} else {
- if (yych <= '"') goto yy249;
- if (yych <= '[') goto yy261;
- goto yy263;
+ if (yych <= '"') goto yy258;
+ if (yych <= '[') goto yy270;
+ goto yy272;
}
-yy253:
+yy262:
YYMARKER = ++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
if (yybm[0+yych] & 32) {
- goto yy253;
+ goto yy262;
}
if (yych <= '&') {
- if (yych == '\n') goto yy243;
+ if (yych == '\n') goto yy252;
} else {
- if (yych <= '\'') goto yy249;
- if (yych >= '\\') goto yy258;
+ if (yych <= '\'') goto yy258;
+ if (yych >= '\\') goto yy267;
}
-yy255:
+yy264:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
if (yybm[0+yych] & 64) {
- goto yy255;
+ goto yy264;
}
- if (yych <= '&') goto yy257;
- if (yych <= '\'') goto yy259;
- goto yy260;
-yy257:
+ if (yych <= '&') goto yy266;
+ if (yych <= '\'') goto yy268;
+ goto yy269;
+yy266:
YYCURSOR = YYMARKER;
- goto yy243;
-yy258:
+ goto yy252;
+yy267:
YYMARKER = ++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
if (yych <= '\r') {
if (yych <= '\t') {
- if (yych <= 0x08) goto yy253;
- goto yy255;
+ if (yych <= 0x08) goto yy262;
+ goto yy264;
} else {
- if (yych <= '\n') goto yy243;
- if (yych <= '\f') goto yy253;
- goto yy255;
+ if (yych <= '\n') goto yy252;
+ if (yych <= '\f') goto yy262;
+ goto yy264;
}
} else {
if (yych <= ' ') {
- if (yych <= 0x1F) goto yy253;
- goto yy255;
+ if (yych <= 0x1F) goto yy262;
+ goto yy264;
} else {
- if (yych == ';') goto yy255;
- goto yy253;
+ if (yych == ';') goto yy264;
+ goto yy262;
}
}
-yy259:
+yy268:
yych = *++YYCURSOR;
- goto yy243;
-yy260:
+ goto yy252;
+yy269:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- if (yych == '\n') goto yy257;
- goto yy255;
-yy261:
+ if (yych == '\n') goto yy266;
+ goto yy264;
+yy270:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
if (yybm[0+yych] & 128) {
- goto yy261;
+ goto yy270;
}
- if (yych <= '!') goto yy257;
- if (yych <= '"') goto yy259;
- goto yy264;
-yy263:
+ if (yych <= '!') goto yy266;
+ if (yych <= '"') goto yy268;
+ goto yy273;
+yy272:
YYMARKER = ++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
if (yych <= '\r') {
if (yych <= '\t') {
- if (yych <= 0x08) goto yy251;
- goto yy261;
+ if (yych <= 0x08) goto yy260;
+ goto yy270;
} else {
- if (yych <= '\n') goto yy243;
- if (yych <= '\f') goto yy251;
- goto yy261;
+ if (yych <= '\n') goto yy252;
+ if (yych <= '\f') goto yy260;
+ goto yy270;
}
} else {
if (yych <= ' ') {
- if (yych <= 0x1F) goto yy251;
- goto yy261;
+ if (yych <= 0x1F) goto yy260;
+ goto yy270;
} else {
- if (yych == ';') goto yy261;
- goto yy251;
+ if (yych == ';') goto yy270;
+ goto yy260;
}
}
-yy264:
+yy273:
++YYCURSOR;
if (YYLIMIT <= YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- if (yych == '\n') goto yy257;
- goto yy261;
+ if (yych == '\n') goto yy266;
+ goto yy270;
}
}