-/* Generated by re2c 0.13.2.dev on Fri Feb 15 01:08:50 2008 */
+/* Generated by re2c 0.13.3.dev on Mon Feb 18 22:23:11 2008 */
/* $Id$ */
#include <stdlib.h>
#include <string.h>
yy71:
yyaccept = 0;
yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '/') {
- if (yych == ',') goto yy156;
+ if (yych <= '@') {
+ if (yych <= '/') {
+ if (yych == ',') goto yy158;
+ } else {
+ if (yych <= '0') goto yy155;
+ if (yych <= '9') goto yy156;
+ }
} else {
- if (yych <= '0') goto yy153;
- if (yych <= '9') goto yy154;
+ if (yych <= '_') {
+ if (yych <= 'Z') goto yy153;
+ if (yych >= '_') goto yy153;
+ } else {
+ if (yych <= '`') goto yy72;
+ if (yych <= 'z') goto yy153;
+ }
}
yy72:
{
if (yyaccept <= 6) {
goto yy112;
} else {
- goto yy157;
+ goto yy159;
}
}
}
RETURN(*tok);
}
yy153:
+ ++YYCURSOR;
+ if (YYLIMIT == YYCURSOR) YYFILL(1);
+ yych = *YYCURSOR;
+ if (yych <= '^') {
+ if (yych <= '9') {
+ if (yych <= '/') goto yy109;
+ goto yy153;
+ } else {
+ if (yych <= '@') goto yy109;
+ if (yych <= 'Z') goto yy153;
+ goto yy109;
+ }
+ } else {
+ if (yych <= 'z') {
+ if (yych == '`') goto yy109;
+ goto yy153;
+ } else {
+ if (yych == '}') goto yy172;
+ goto yy109;
+ }
+ }
+yy155:
yych = *++YYCURSOR;
- if (yych == ',') goto yy167;
- goto yy155;
-yy154:
+ if (yych == ',') goto yy169;
+ goto yy157;
+yy156:
++YYCURSOR;
if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
-yy155:
+yy157:
if (yybm[0+yych] & 128) {
- goto yy154;
+ goto yy156;
}
- if (yych == ',') goto yy160;
- if (yych == '}') goto yy158;
+ if (yych == ',') goto yy162;
+ if (yych == '}') goto yy160;
goto yy109;
-yy156:
+yy158:
++YYCURSOR;
-yy157:
+yy159:
{
fatal("illegal closure form, use '{n}', '{n,}', '{n,m}' where n and m are numbers");
}
-yy158:
+yy160:
++YYCURSOR;
{
yylval.extop.minsize = atoi((char *)tok+1);
yylval.extop.maxsize = atoi((char *)tok+1);
RETURN(CLOSESIZE);
}
-yy160:
+yy162:
yyaccept = 7;
yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '/') goto yy157;
- if (yych <= '9') goto yy163;
- if (yych != '}') goto yy157;
+ if (yych <= '/') goto yy159;
+ if (yych <= '9') goto yy165;
+ if (yych != '}') goto yy159;
++YYCURSOR;
{
yylval.extop.minsize = atoi((char *)tok+1);
yylval.extop.maxsize = -1;
RETURN(CLOSESIZE);
}
-yy163:
+yy165:
++YYCURSOR;
if (YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
if (yych <= '/') goto yy109;
- if (yych <= '9') goto yy163;
+ if (yych <= '9') goto yy165;
if (yych != '}') goto yy109;
++YYCURSOR;
{
yylval.extop.maxsize = MAX(yylval.extop.minsize,atoi(strchr((char *)tok, ',')+1));
RETURN(CLOSESIZE);
}
-yy167:
+yy169:
yyaccept = 7;
yych = *(YYMARKER = ++YYCURSOR);
- if (yych <= '/') goto yy157;
- if (yych <= '9') goto yy163;
- if (yych != '}') goto yy157;
+ if (yych <= '/') goto yy159;
+ if (yych <= '9') goto yy165;
+ if (yych != '}') goto yy159;
++YYCURSOR;
{
yylval.op = '*';
RETURN(CLOSE);
}
+yy172:
+ ++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;
+ }
}
yych = *YYCURSOR;
if (yych <= '&') {
if (yych <= 0x0A) {
- if (yych <= 0x00) goto yy178;
- if (yych <= 0x09) goto yy180;
- goto yy176;
- } else {
- if (yych == '"') goto yy182;
+ if (yych <= 0x00) goto yy182;
+ if (yych <= 0x09) goto yy184;
goto yy180;
+ } else {
+ if (yych == '"') goto yy186;
+ goto yy184;
}
} else {
if (yych <= '{') {
- if (yych <= '\'') goto yy183;
- if (yych <= 'z') goto yy180;
- goto yy174;
+ if (yych <= '\'') goto yy187;
+ if (yych <= 'z') goto yy184;
+ goto yy178;
} else {
- if (yych != '}') goto yy180;
+ if (yych != '}') goto yy184;
}
}
++YYCURSOR;
}
goto code;
}
-yy174:
+yy178:
++YYCURSOR;
{
if (depth == 0)
}
goto code;
}
-yy176:
+yy180:
YYCTXMARKER = YYCURSOR + 1;
++YYCURSOR;
if ((yych = *YYCURSOR) <= 0x0C) {
- if (yych <= 0x08) goto yy177;
- if (yych <= 0x0A) goto yy191;
+ if (yych <= 0x08) goto yy181;
+ if (yych <= 0x0A) goto yy195;
} else {
- if (yych <= 0x0D) goto yy191;
- if (yych == ' ') goto yy191;
+ if (yych <= 0x0D) goto yy195;
+ if (yych == ' ') goto yy195;
}
-yy177:
+yy181:
{
if (depth == 0)
{
cline++;
goto code;
}
-yy178:
+yy182:
++YYCURSOR;
{
if (cursor == eof)
}
goto code;
}
-yy180:
+yy184:
++YYCURSOR;
-yy181:
+yy185:
{
goto code;
}
-yy182:
+yy186:
yych = *(YYMARKER = ++YYCURSOR);
- if (yych == 0x0A) goto yy181;
- goto yy189;
-yy183:
+ if (yych == 0x0A) goto yy185;
+ goto yy193;
+yy187:
yych = *(YYMARKER = ++YYCURSOR);
- if (yych == 0x0A) goto yy181;
- goto yy185;
-yy184:
+ if (yych == 0x0A) goto yy185;
+ goto yy189;
+yy188:
++YYCURSOR;
if (YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy185:
+yy189:
if (yybm[0+yych] & 64) {
- goto yy184;
+ goto yy188;
}
- if (yych <= '&') goto yy186;
- if (yych <= '\'') goto yy180;
- goto yy187;
-yy186:
+ if (yych <= '&') goto yy190;
+ if (yych <= '\'') goto yy184;
+ goto yy191;
+yy190:
YYCURSOR = YYMARKER;
- goto yy181;
-yy187:
+ goto yy185;
+yy191:
++YYCURSOR;
if (YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- if (yych == 0x0A) goto yy186;
- goto yy184;
-yy188:
+ if (yych == 0x0A) goto yy190;
+ goto yy188;
+yy192:
++YYCURSOR;
if (YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy189:
+yy193:
if (yybm[0+yych] & 128) {
- goto yy188;
+ goto yy192;
}
- if (yych <= '!') goto yy186;
- if (yych <= '"') goto yy180;
+ if (yych <= '!') goto yy190;
+ if (yych <= '"') goto yy184;
++YYCURSOR;
if (YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- if (yych == 0x0A) goto yy186;
- goto yy188;
-yy191:
+ if (yych == 0x0A) goto yy190;
+ goto yy192;
+yy195:
++YYCURSOR;
YYCURSOR = YYCTXMARKER;
{
if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
if (yych <= ')') {
- if (yych == 0x0A) goto yy198;
- goto yy200;
+ if (yych == 0x0A) goto yy202;
+ goto yy204;
} else {
- if (yych <= '*') goto yy195;
- if (yych == '/') goto yy197;
- goto yy200;
+ if (yych <= '*') goto yy199;
+ if (yych == '/') goto yy201;
+ goto yy204;
}
-yy195:
+yy199:
++YYCURSOR;
- if ((yych = *YYCURSOR) == '/') goto yy203;
-yy196:
+ if ((yych = *YYCURSOR) == '/') goto yy207;
+yy200:
{
if(cursor == eof)
{
}
goto comment;
}
-yy197:
+yy201:
yych = *++YYCURSOR;
- if (yych == '*') goto yy201;
- goto yy196;
-yy198:
+ if (yych == '*') goto yy205;
+ goto yy200;
+yy202:
++YYCURSOR;
{
if(cursor == eof)
cline++;
goto comment;
}
-yy200:
+yy204:
yych = *++YYCURSOR;
- goto yy196;
-yy201:
+ goto yy200;
+yy205:
++YYCURSOR;
{
++depth;
fatal("ambiguous /* found");
goto comment;
}
-yy203:
+yy207:
++YYCURSOR;
{
if(--depth == 0)
if ((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
yych = *YYCURSOR;
if (yych <= 0x1F) {
- if (yych != 0x09) goto yy211;
+ if (yych != 0x09) goto yy215;
} else {
- if (yych <= ' ') goto yy207;
- if (yych == '=') goto yy209;
- goto yy211;
+ if (yych <= ' ') goto yy211;
+ if (yych == '=') goto yy213;
+ goto yy215;
}
-yy207:
+yy211:
++YYCURSOR;
yych = *YYCURSOR;
- goto yy216;
-yy208:
+ goto yy220;
+yy212:
{
goto config;
}
-yy209:
+yy213:
++YYCURSOR;
yych = *YYCURSOR;
- goto yy214;
-yy210:
+ goto yy218;
+yy214:
{
iscfg = 2;
cur = cursor;
RETURN('=');
}
-yy211:
+yy215:
++YYCURSOR;
{
fatal("missing '='");
}
-yy213:
+yy217:
++YYCURSOR;
if (YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy214:
+yy218:
if (yybm[0+yych] & 128) {
- goto yy213;
+ goto yy217;
}
- goto yy210;
-yy215:
+ goto yy214;
+yy219:
++YYCURSOR;
if (YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy216:
- if (yych == 0x09) goto yy215;
- if (yych == ' ') goto yy215;
- goto yy208;
+yy220:
+ if (yych == 0x09) goto yy219;
+ if (yych == ' ') goto yy219;
+ goto yy212;
}
yych = *YYCURSOR;
if (yych <= '&') {
if (yych <= 0x0D) {
- if (yych <= 0x08) goto yy225;
- if (yych <= 0x0A) goto yy219;
- if (yych <= 0x0C) goto yy225;
+ if (yych <= 0x08) goto yy229;
+ if (yych <= 0x0A) goto yy223;
+ if (yych <= 0x0C) goto yy229;
} else {
if (yych <= ' ') {
- if (yych <= 0x1F) goto yy225;
+ if (yych <= 0x1F) goto yy229;
} else {
- if (yych == '"') goto yy227;
- goto yy225;
+ if (yych == '"') goto yy231;
+ goto yy229;
}
}
} else {
if (yych <= '/') {
- if (yych <= '\'') goto yy229;
- if (yych == '-') goto yy222;
- goto yy225;
+ if (yych <= '\'') goto yy233;
+ if (yych == '-') goto yy226;
+ goto yy229;
} else {
if (yych <= '9') {
- if (yych <= '0') goto yy220;
- goto yy223;
+ if (yych <= '0') goto yy224;
+ goto yy227;
} else {
- if (yych != ';') goto yy225;
+ if (yych != ';') goto yy229;
}
}
}
-yy219:
+yy223:
{
cur = cursor;
yylval.str = new Str(token());
iscfg = 0;
return VALUE;
}
-yy220:
+yy224:
++YYCURSOR;
if (yybm[0+(yych = *YYCURSOR)] & 8) {
- goto yy225;
+ goto yy229;
}
-yy221:
+yy225:
{
cur = cursor;
yylval.number = atoi(token().to_string().c_str());
iscfg = 0;
return NUMBER;
}
-yy222:
+yy226:
yych = *++YYCURSOR;
- if (yych <= '0') goto yy226;
- if (yych >= ':') goto yy226;
-yy223:
+ if (yych <= '0') goto yy230;
+ if (yych >= ':') goto yy230;
+yy227:
++YYCURSOR;
if (YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
if (yybm[0+yych] & 4) {
- goto yy223;
+ goto yy227;
}
if (yych <= 0x0D) {
- if (yych <= 0x08) goto yy225;
- if (yych <= 0x0A) goto yy221;
- if (yych >= 0x0D) goto yy221;
+ if (yych <= 0x08) goto yy229;
+ if (yych <= 0x0A) goto yy225;
+ if (yych >= 0x0D) goto yy225;
} else {
if (yych <= ' ') {
- if (yych >= ' ') goto yy221;
+ if (yych >= ' ') goto yy225;
} else {
- if (yych == ';') goto yy221;
+ if (yych == ';') goto yy225;
}
}
-yy225:
+yy229:
++YYCURSOR;
if (YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
-yy226:
+yy230:
if (yybm[0+yych] & 8) {
- goto yy225;
+ goto yy229;
}
- goto yy219;
-yy227:
+ goto yy223;
+yy231:
YYMARKER = ++YYCURSOR;
if (YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
if (yybm[0+yych] & 16) {
- goto yy227;
+ goto yy231;
}
if (yych <= '!') {
- if (yych == 0x0A) goto yy219;
- goto yy237;
+ if (yych == 0x0A) goto yy223;
+ goto yy241;
} else {
- if (yych <= '"') goto yy225;
- if (yych <= '[') goto yy237;
- goto yy239;
+ if (yych <= '"') goto yy229;
+ if (yych <= '[') goto yy241;
+ goto yy243;
}
-yy229:
+yy233:
YYMARKER = ++YYCURSOR;
if (YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
if (yybm[0+yych] & 32) {
- goto yy229;
+ goto yy233;
}
if (yych <= '&') {
- if (yych == 0x0A) goto yy219;
+ if (yych == 0x0A) goto yy223;
} else {
- if (yych <= '\'') goto yy225;
- if (yych >= '\\') goto yy234;
+ if (yych <= '\'') goto yy229;
+ if (yych >= '\\') goto yy238;
}
-yy231:
+yy235:
++YYCURSOR;
if (YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
if (yybm[0+yych] & 64) {
- goto yy231;
+ goto yy235;
}
- if (yych <= '&') goto yy233;
- if (yych <= '\'') goto yy235;
- goto yy236;
-yy233:
+ if (yych <= '&') goto yy237;
+ if (yych <= '\'') goto yy239;
+ goto yy240;
+yy237:
YYCURSOR = YYMARKER;
- goto yy219;
-yy234:
+ goto yy223;
+yy238:
YYMARKER = ++YYCURSOR;
if (YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
if (yych <= 0x0D) {
if (yych <= 0x09) {
- if (yych <= 0x08) goto yy229;
- goto yy231;
+ if (yych <= 0x08) goto yy233;
+ goto yy235;
} else {
- if (yych <= 0x0A) goto yy219;
- if (yych <= 0x0C) goto yy229;
- goto yy231;
+ if (yych <= 0x0A) goto yy223;
+ if (yych <= 0x0C) goto yy233;
+ goto yy235;
}
} else {
if (yych <= ' ') {
- if (yych <= 0x1F) goto yy229;
- goto yy231;
+ if (yych <= 0x1F) goto yy233;
+ goto yy235;
} else {
- if (yych == ';') goto yy231;
- goto yy229;
+ if (yych == ';') goto yy235;
+ goto yy233;
}
}
-yy235:
+yy239:
yych = *++YYCURSOR;
- goto yy219;
-yy236:
+ goto yy223;
+yy240:
++YYCURSOR;
if (YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- if (yych == 0x0A) goto yy233;
- goto yy231;
-yy237:
+ if (yych == 0x0A) goto yy237;
+ goto yy235;
+yy241:
++YYCURSOR;
if (YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
if (yybm[0+yych] & 128) {
- goto yy237;
+ goto yy241;
}
- if (yych <= '!') goto yy233;
- if (yych <= '"') goto yy235;
- goto yy240;
-yy239:
+ if (yych <= '!') goto yy237;
+ if (yych <= '"') goto yy239;
+ goto yy244;
+yy243:
YYMARKER = ++YYCURSOR;
if (YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
if (yych <= 0x0D) {
if (yych <= 0x09) {
- if (yych <= 0x08) goto yy227;
- goto yy237;
+ if (yych <= 0x08) goto yy231;
+ goto yy241;
} else {
- if (yych <= 0x0A) goto yy219;
- if (yych <= 0x0C) goto yy227;
- goto yy237;
+ if (yych <= 0x0A) goto yy223;
+ if (yych <= 0x0C) goto yy231;
+ goto yy241;
}
} else {
if (yych <= ' ') {
- if (yych <= 0x1F) goto yy227;
- goto yy237;
+ if (yych <= 0x1F) goto yy231;
+ goto yy241;
} else {
- if (yych == ';') goto yy237;
- goto yy227;
+ if (yych == ';') goto yy241;
+ goto yy231;
}
}
-yy240:
+yy244:
++YYCURSOR;
if (YYLIMIT == YYCURSOR) YYFILL(1);
yych = *YYCURSOR;
- if (yych == 0x0A) goto yy233;
- goto yy237;
+ if (yych == 0x0A) goto yy237;
+ goto yy241;
}
}