]> granicus.if.org Git - re2c/commitdiff
- Seperate parameter names in YYFILL/YYSETSTATE with '@' instead of ':'
authorhelly <helly@642ea486-5414-0410-9d7f-a0204ed87703>
Tue, 1 May 2007 13:44:26 +0000 (13:44 +0000)
committerhelly <helly@642ea486-5414-0410-9d7f-a0204ed87703>
Tue, 1 May 2007 13:44:26 +0000 (13:44 +0000)
13 files changed:
re2c/bootstrap/scanner.cc
re2c/code.cc
re2c/scanner.re
re2c/test/condition_05.cg.re
re2c/test/condition_05.cgitcondition_05.cgit.h.re
re2c/test/condition_05.cgtcondition_05.cgt.h.re
re2c/test/condition_05.cs.re
re2c/test/condition_06.cs.re
re2c/test/condition_07.cbi.re
re2c/test/condition_08.cbi.re
re2c/test/condition_08.cbif.re
re2c/test/condition_09.cbif.re
re2c/test/condition_09.cgif.re

index cdafd0d94ae5e21151e7a48d5c32da6ad35e9719..5d54c1578b39c4bc66718b6768270b1430a601a9 100644 (file)
@@ -1,4 +1,4 @@
-/* Generated by re2c 0.13.0.dev on Sun Apr 29 23:44:31 2007 */
+/* Generated by re2c 0.13.0.dev on Tue May  1 09:40:03 2007 */
 #line 1 "scanner.re"
 /* $Id$ */
 #include <stdlib.h>
@@ -520,10 +520,10 @@ yy71:
        yyaccept = 0;
        yych = *(YYMARKER = ++YYCURSOR);
        if(yych <= '/') {
-               if(yych == ',') goto yy144;
+               if(yych == ',') goto yy147;
        } else {
-               if(yych <= '0') goto yy141;
-               if(yych <= '9') goto yy142;
+               if(yych <= '0') goto yy144;
+               if(yych <= '9') goto yy145;
        }
 yy72:
 #line 246 "scanner.re"
@@ -534,7 +534,7 @@ yy72:
 #line 535 "scanner.cc"
 yy73:
        ++YYCURSOR;
-       if((yych = *YYCURSOR) == '*') goto yy139;
+       if((yych = *YYCURSOR) == '*') goto yy142;
 yy74:
 #line 299 "scanner.re"
        {
@@ -543,7 +543,7 @@ yy74:
 #line 544 "scanner.cc"
 yy75:
        ++YYCURSOR;
-       if((yych = *YYCURSOR) == '/') goto yy137;
+       if((yych = *YYCURSOR) == '/') goto yy140;
 #line 303 "scanner.re"
        {
                                        yylval.op = *tok;
@@ -553,7 +553,7 @@ yy75:
 yy77:
        yyaccept = 1;
        yych = *(YYMARKER = ++YYCURSOR);
-       if(yych != 0x0A) goto yy133;
+       if(yych != 0x0A) goto yy136;
 yy78:
 #line 273 "scanner.re"
        {
@@ -563,7 +563,7 @@ yy78:
 yy79:
        yyaccept = 2;
        yych = *(YYMARKER = ++YYCURSOR);
-       if(yych != 0x0A) goto yy128;
+       if(yych != 0x0A) goto yy131;
 yy80:
 #line 276 "scanner.re"
        {
@@ -574,8 +574,8 @@ yy81:
        yyaccept = 3;
        yych = *(YYMARKER = ++YYCURSOR);
        if(yych == 0x0A) goto yy82;
-       if(yych == '^') goto yy119;
-       goto yy118;
+       if(yych == '^') goto yy122;
+       goto yy121;
 yy82:
 #line 292 "scanner.re"
        {
@@ -585,7 +585,7 @@ yy82:
 yy83:
        yyaccept = 4;
        yych = *(YYMARKER = ++YYCURSOR);
-       if(yych == '>') goto yy112;
+       if(yych == '>') goto yy115;
        goto yy74;
 yy84:
        yych = *++YYCURSOR;
@@ -726,24 +726,25 @@ yy108:
                        if(yyaccept <= 6) {
                                goto yy111;
                        } else {
-                               goto yy145;
+                               goto yy148;
                        }
                }
        }
 yy109:
        yyaccept = 6;
        YYMARKER = ++YYCURSOR;
-       if(YYLIMIT == YYCURSOR) YYFILL(1);
+       if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
        yych = *YYCURSOR;
-       if(yych <= 'Z') {
+       if(yych <= '@') {
                if(yych <= '9') {
                        if(yych >= '0') goto yy109;
                } else {
                        if(yych <= ':') goto yy107;
-                       if(yych >= 'A') goto yy109;
+                       if(yych >= '@') goto yy112;
                }
        } else {
                if(yych <= '_') {
+                       if(yych <= 'Z') goto yy109;
                        if(yych >= '_') goto yy109;
                } else {
                        if(yych <= '`') goto yy111;
@@ -759,18 +760,46 @@ yy111:
                                        yylval.str = new Str(token());
                                        return CONFIG;
                                }
-#line 763 "scanner.cc"
+#line 764 "scanner.cc"
 yy112:
-       YYCTXMARKER = YYCURSOR + 1;
        yych = *++YYCURSOR;
-       goto yy114;
+       if(yych <= '^') {
+               if(yych <= '@') goto yy108;
+               if(yych >= '[') goto yy108;
+       } else {
+               if(yych == '`') goto yy108;
+               if(yych >= '{') goto yy108;
+       }
 yy113:
        ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
-yy114:
-       if(yybm[0+yych] & 8) {
+       if(yych <= 'Z') {
+               if(yych <= '/') goto yy111;
+               if(yych <= '9') goto yy113;
+               if(yych <= '@') goto yy111;
                goto yy113;
+       } else {
+               if(yych <= '_') {
+                       if(yych <= '^') goto yy111;
+                       goto yy113;
+               } else {
+                       if(yych <= '`') goto yy111;
+                       if(yych <= 'z') goto yy113;
+                       goto yy111;
+               }
+       }
+yy115:
+       YYCTXMARKER = YYCURSOR + 1;
+       yych = *++YYCURSOR;
+       goto yy117;
+yy116:
+       ++YYCURSOR;
+       if(YYLIMIT == YYCURSOR) YYFILL(1);
+       yych = *YYCURSOR;
+yy117:
+       if(yybm[0+yych] & 8) {
+               goto yy116;
        }
        if(yych != '{') goto yy108;
        ++YYCURSOR;
@@ -779,37 +808,37 @@ yy114:
        {
                                        RETURN(NOCOND);
                                }
-#line 783 "scanner.cc"
-yy117:
+#line 812 "scanner.cc"
+yy120:
        ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
-yy118:
+yy121:
        if(yybm[0+yych] & 16) {
-               goto yy117;
+               goto yy120;
        }
        if(yych <= '[') goto yy108;
-       if(yych <= '\\') goto yy121;
-       goto yy122;
-yy119:
+       if(yych <= '\\') goto yy124;
+       goto yy125;
+yy122:
        ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
        if(yych <= '[') {
                if(yych == 0x0A) goto yy108;
-               goto yy119;
+               goto yy122;
        } else {
-               if(yych <= '\\') goto yy124;
-               if(yych <= ']') goto yy125;
-               goto yy119;
+               if(yych <= '\\') goto yy127;
+               if(yych <= ']') goto yy128;
+               goto yy122;
        }
-yy121:
+yy124:
        ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
        if(yych == 0x0A) goto yy108;
-       goto yy117;
-yy122:
+       goto yy120;
+yy125:
        ++YYCURSOR;
 #line 286 "scanner.re"
        {
@@ -817,14 +846,14 @@ yy122:
                                        yylval.regexp = ranToRE(token());
                                        return RANGE;
                                }
-#line 821 "scanner.cc"
-yy124:
+#line 850 "scanner.cc"
+yy127:
        ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
        if(yych == 0x0A) goto yy108;
-       goto yy119;
-yy125:
+       goto yy122;
+yy128:
        ++YYCURSOR;
 #line 280 "scanner.re"
        {
@@ -832,23 +861,23 @@ yy125:
                                        yylval.regexp = invToRE(token());
                                        return RANGE;
                                }
-#line 836 "scanner.cc"
-yy127:
+#line 865 "scanner.cc"
+yy130:
        ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
-yy128:
+yy131:
        if(yybm[0+yych] & 32) {
-               goto yy127;
+               goto yy130;
        }
        if(yych <= '&') goto yy108;
-       if(yych <= '\'') goto yy130;
+       if(yych <= '\'') goto yy133;
        ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
        if(yych == 0x0A) goto yy108;
-       goto yy127;
-yy130:
+       goto yy130;
+yy133:
        ++YYCURSOR;
 #line 267 "scanner.re"
        {
@@ -856,23 +885,23 @@ yy130:
                                        yylval.regexp = strToCaseInsensitiveRE(token());
                                        return STRING;
                                }
-#line 860 "scanner.cc"
-yy132:
+#line 889 "scanner.cc"
+yy135:
        ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
-yy133:
+yy136:
        if(yybm[0+yych] & 64) {
-               goto yy132;
+               goto yy135;
        }
        if(yych <= '!') goto yy108;
-       if(yych <= '"') goto yy135;
+       if(yych <= '"') goto yy138;
        ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
        if(yych == 0x0A) goto yy108;
-       goto yy132;
-yy135:
+       goto yy135;
+yy138:
        ++YYCURSOR;
 #line 261 "scanner.re"
        {
@@ -880,47 +909,47 @@ yy135:
                                        yylval.regexp = strToRE(token());
                                        return STRING;
                                }
-#line 884 "scanner.cc"
-yy137:
+#line 913 "scanner.cc"
+yy140:
        ++YYCURSOR;
 #line 256 "scanner.re"
        {
                                        tok = cursor;
                                        RETURN(0);
                                }
-#line 892 "scanner.cc"
-yy139:
+#line 921 "scanner.cc"
+yy142:
        ++YYCURSOR;
 #line 251 "scanner.re"
        {
                                        depth = 1;
                                        goto comment;
                                }
-#line 900 "scanner.cc"
-yy141:
+#line 929 "scanner.cc"
+yy144:
        yych = *++YYCURSOR;
-       if(yych == ',') goto yy155;
-       goto yy143;
-yy142:
+       if(yych == ',') goto yy158;
+       goto yy146;
+yy145:
        ++YYCURSOR;
        if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
        yych = *YYCURSOR;
-yy143:
+yy146:
        if(yybm[0+yych] & 128) {
-               goto yy142;
+               goto yy145;
        }
-       if(yych == ',') goto yy148;
-       if(yych == '}') goto yy146;
+       if(yych == ',') goto yy151;
+       if(yych == '}') goto yy149;
        goto yy108;
-yy144:
+yy147:
        ++YYCURSOR;
-yy145:
+yy148:
 #line 335 "scanner.re"
        {
                                        fatal("illegal closure form, use '{n}', '{n,}', '{n,m}' where n and m are numbers");
                                }
-#line 923 "scanner.cc"
-yy146:
+#line 952 "scanner.cc"
+yy149:
        ++YYCURSOR;
 #line 317 "scanner.re"
        {
@@ -928,13 +957,13 @@ yy146:
                                        yylval.extop.maxsize = atoi((char *)tok+1);
                                        RETURN(CLOSESIZE);
                                }
-#line 932 "scanner.cc"
-yy148:
+#line 961 "scanner.cc"
+yy151:
        yyaccept = 7;
        yych = *(YYMARKER = ++YYCURSOR);
-       if(yych <= '/') goto yy145;
-       if(yych <= '9') goto yy151;
-       if(yych != '}') goto yy145;
+       if(yych <= '/') goto yy148;
+       if(yych <= '9') goto yy154;
+       if(yych != '}') goto yy148;
        ++YYCURSOR;
 #line 329 "scanner.re"
        {
@@ -942,13 +971,13 @@ yy148:
                                        yylval.extop.maxsize = -1;
                                        RETURN(CLOSESIZE);
                                }
-#line 946 "scanner.cc"
-yy151:
+#line 975 "scanner.cc"
+yy154:
        ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
        if(yych <= '/') goto yy108;
-       if(yych <= '9') goto yy151;
+       if(yych <= '9') goto yy154;
        if(yych != '}') goto yy108;
        ++YYCURSOR;
 #line 323 "scanner.re"
@@ -957,27 +986,27 @@ yy151:
                                        yylval.extop.maxsize = MAX(yylval.extop.minsize,atoi(strchr((char *)tok, ',')+1));
                                        RETURN(CLOSESIZE);
                                }
-#line 961 "scanner.cc"
-yy155:
+#line 990 "scanner.cc"
+yy158:
        yyaccept = 7;
        yych = *(YYMARKER = ++YYCURSOR);
-       if(yych <= '/') goto yy145;
-       if(yych <= '9') goto yy151;
-       if(yych != '}') goto yy145;
+       if(yych <= '/') goto yy148;
+       if(yych <= '9') goto yy154;
+       if(yych != '}') goto yy148;
        ++YYCURSOR;
 #line 312 "scanner.re"
        {
                                        yylval.op = '*';
                                        RETURN(CLOSE);
                                }
-#line 974 "scanner.cc"
+#line 1003 "scanner.cc"
 }
 #line 377 "scanner.re"
 
 
 code:
 
-#line 981 "scanner.cc"
+#line 1010 "scanner.cc"
 {
        YYCTYPE yych;
        static const unsigned char yybm[] = {
@@ -1018,20 +1047,20 @@ code:
        yych = *YYCURSOR;
        if(yych <= '&') {
                if(yych <= 0x0A) {
-                       if(yych <= 0x00) goto yy166;
-                       if(yych <= 0x09) goto yy168;
-                       goto yy164;
+                       if(yych <= 0x00) goto yy169;
+                       if(yych <= 0x09) goto yy171;
+                       goto yy167;
                } else {
-                       if(yych == '"') goto yy170;
-                       goto yy168;
+                       if(yych == '"') goto yy173;
+                       goto yy171;
                }
        } else {
                if(yych <= '{') {
-                       if(yych <= '\'') goto yy171;
-                       if(yych <= 'z') goto yy168;
-                       goto yy162;
+                       if(yych <= '\'') goto yy174;
+                       if(yych <= 'z') goto yy171;
+                       goto yy165;
                } else {
-                       if(yych != '}') goto yy168;
+                       if(yych != '}') goto yy171;
                }
        }
        ++YYCURSOR;
@@ -1045,16 +1074,16 @@ code:
                                        }
                                        goto code;
                                }
-#line 1049 "scanner.cc"
-yy162:
+#line 1078 "scanner.cc"
+yy165:
        ++YYCURSOR;
 #line 390 "scanner.re"
        {
                                        ++depth;
                                        goto code;
                                }
-#line 1057 "scanner.cc"
-yy164:
+#line 1086 "scanner.cc"
+yy167:
        ++YYCURSOR;
 #line 394 "scanner.re"
        {
@@ -1066,8 +1095,8 @@ yy164:
                                        cline++;
                                        goto code;
                                }
-#line 1070 "scanner.cc"
-yy166:
+#line 1099 "scanner.cc"
+yy169:
        ++YYCURSOR;
 #line 403 "scanner.re"
        {
@@ -1081,81 +1110,81 @@ yy166:
                                        }
                                        goto code;
                                }
-#line 1085 "scanner.cc"
-yy168:
+#line 1114 "scanner.cc"
+yy171:
        ++YYCURSOR;
-yy169:
+yy172:
 #line 414 "scanner.re"
        {
                                        goto code;
                                }
-#line 1093 "scanner.cc"
-yy170:
+#line 1122 "scanner.cc"
+yy173:
        yych = *(YYMARKER = ++YYCURSOR);
-       if(yych == 0x0A) goto yy169;
-       goto yy177;
-yy171:
+       if(yych == 0x0A) goto yy172;
+       goto yy180;
+yy174:
        yych = *(YYMARKER = ++YYCURSOR);
-       if(yych == 0x0A) goto yy169;
-       goto yy173;
-yy172:
+       if(yych == 0x0A) goto yy172;
+       goto yy176;
+yy175:
        ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
-yy173:
+yy176:
        if(yybm[0+yych] & 64) {
-               goto yy172;
+               goto yy175;
        }
-       if(yych <= '&') goto yy174;
-       if(yych <= '\'') goto yy168;
-       goto yy175;
-yy174:
+       if(yych <= '&') goto yy177;
+       if(yych <= '\'') goto yy171;
+       goto yy178;
+yy177:
        YYCURSOR = YYMARKER;
-       goto yy169;
-yy175:
+       goto yy172;
+yy178:
        ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
-       if(yych == 0x0A) goto yy174;
-       goto yy172;
-yy176:
+       if(yych == 0x0A) goto yy177;
+       goto yy175;
+yy179:
        ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
-yy177:
+yy180:
        if(yybm[0+yych] & 128) {
-               goto yy176;
+               goto yy179;
        }
-       if(yych <= '!') goto yy174;
-       if(yych <= '"') goto yy168;
+       if(yych <= '!') goto yy177;
+       if(yych <= '"') goto yy171;
        ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
-       if(yych == 0x0A) goto yy174;
-       goto yy176;
+       if(yych == 0x0A) goto yy177;
+       goto yy179;
 }
 #line 417 "scanner.re"
 
 
 comment:
 
-#line 1143 "scanner.cc"
+#line 1172 "scanner.cc"
 {
        YYCTYPE yych;
        if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
        yych = *YYCURSOR;
        if(yych <= ')') {
-               if(yych == 0x0A) goto yy184;
-               goto yy186;
+               if(yych == 0x0A) goto yy187;
+               goto yy189;
        } else {
-               if(yych <= '*') goto yy181;
-               if(yych == '/') goto yy183;
-               goto yy186;
+               if(yych <= '*') goto yy184;
+               if(yych == '/') goto yy186;
+               goto yy189;
        }
-yy181:
+yy184:
        ++YYCURSOR;
-       if((yych = *YYCURSOR) == '/') goto yy189;
-yy182:
+       if((yych = *YYCURSOR) == '/') goto yy192;
+yy185:
 #line 445 "scanner.re"
        {
                                        if(cursor == eof)
@@ -1164,12 +1193,12 @@ yy182:
                                        }
                                        goto comment;
                                }
-#line 1168 "scanner.cc"
-yy183:
+#line 1197 "scanner.cc"
+yy186:
        yych = *++YYCURSOR;
-       if(yych == '*') goto yy187;
-       goto yy182;
-yy184:
+       if(yych == '*') goto yy190;
+       goto yy185;
+yy187:
        ++YYCURSOR;
 #line 436 "scanner.re"
        {
@@ -1181,11 +1210,11 @@ yy184:
                                        cline++;
                                        goto comment;
                                }
-#line 1185 "scanner.cc"
-yy186:
+#line 1214 "scanner.cc"
+yy189:
        yych = *++YYCURSOR;
-       goto yy182;
-yy187:
+       goto yy185;
+yy190:
        ++YYCURSOR;
 #line 431 "scanner.re"
        {
@@ -1193,8 +1222,8 @@ yy187:
                                        fatal("ambiguous /* found");
                                        goto comment;
                                }
-#line 1197 "scanner.cc"
-yy189:
+#line 1226 "scanner.cc"
+yy192:
        ++YYCURSOR;
 #line 421 "scanner.re"
        {
@@ -1207,14 +1236,14 @@ yy189:
                                                goto comment;
                                        }
                                }
-#line 1211 "scanner.cc"
+#line 1240 "scanner.cc"
 }
 #line 452 "scanner.re"
 
 
 config:
 
-#line 1218 "scanner.cc"
+#line 1247 "scanner.cc"
 {
        YYCTYPE yych;
        static const unsigned char yybm[] = {
@@ -1254,65 +1283,65 @@ config:
        if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
        yych = *YYCURSOR;
        if(yych <= 0x1F) {
-               if(yych != 0x09) goto yy197;
+               if(yych != 0x09) goto yy200;
        } else {
-               if(yych <= ' ') goto yy193;
-               if(yych == '=') goto yy195;
-               goto yy197;
+               if(yych <= ' ') goto yy196;
+               if(yych == '=') goto yy198;
+               goto yy200;
        }
-yy193:
+yy196:
        ++YYCURSOR;
        yych = *YYCURSOR;
-       goto yy202;
-yy194:
+       goto yy205;
+yy197:
 #line 456 "scanner.re"
        {
                                        goto config;
                                }
-#line 1273 "scanner.cc"
-yy195:
+#line 1302 "scanner.cc"
+yy198:
        ++YYCURSOR;
        yych = *YYCURSOR;
-       goto yy200;
-yy196:
+       goto yy203;
+yy199:
 #line 459 "scanner.re"
        {
                                        iscfg = 2;
                                        cur = cursor;
                                        RETURN('=');
                                }
-#line 1285 "scanner.cc"
-yy197:
+#line 1314 "scanner.cc"
+yy200:
        ++YYCURSOR;
 #line 464 "scanner.re"
        {
                                        fatal("missing '='");
                                }
-#line 1292 "scanner.cc"
-yy199:
+#line 1321 "scanner.cc"
+yy202:
        ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
-yy200:
+yy203:
        if(yybm[0+yych] & 128) {
-               goto yy199;
+               goto yy202;
        }
-       goto yy196;
-yy201:
+       goto yy199;
+yy204:
        ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
-yy202:
-       if(yych == 0x09) goto yy201;
-       if(yych == ' ') goto yy201;
-       goto yy194;
+yy205:
+       if(yych == 0x09) goto yy204;
+       if(yych == ' ') goto yy204;
+       goto yy197;
 }
 #line 467 "scanner.re"
 
 
 value:
 
-#line 1316 "scanner.cc"
+#line 1345 "scanner.cc"
 {
        YYCTYPE yych;
        static const unsigned char yybm[] = {
@@ -1353,32 +1382,32 @@ value:
        yych = *YYCURSOR;
        if(yych <= '&') {
                if(yych <= 0x0D) {
-                       if(yych <= 0x08) goto yy211;
-                       if(yych <= 0x0A) goto yy205;
-                       if(yych <= 0x0C) goto yy211;
+                       if(yych <= 0x08) goto yy214;
+                       if(yych <= 0x0A) goto yy208;
+                       if(yych <= 0x0C) goto yy214;
                } else {
                        if(yych <= ' ') {
-                               if(yych <= 0x1F) goto yy211;
+                               if(yych <= 0x1F) goto yy214;
                        } else {
-                               if(yych == '"') goto yy213;
-                               goto yy211;
+                               if(yych == '"') goto yy216;
+                               goto yy214;
                        }
                }
        } else {
                if(yych <= '/') {
-                       if(yych <= '\'') goto yy215;
-                       if(yych == '-') goto yy208;
-                       goto yy211;
+                       if(yych <= '\'') goto yy218;
+                       if(yych == '-') goto yy211;
+                       goto yy214;
                } else {
                        if(yych <= '9') {
-                               if(yych <= '0') goto yy206;
-                               goto yy209;
+                               if(yych <= '0') goto yy209;
+                               goto yy212;
                        } else {
-                               if(yych != ';') goto yy211;
+                               if(yych != ';') goto yy214;
                        }
                }
        }
-yy205:
+yy208:
 #line 477 "scanner.re"
        {
                                        cur = cursor;
@@ -1386,13 +1415,13 @@ yy205:
                                        iscfg = 0;
                                        return VALUE;
                                }
-#line 1390 "scanner.cc"
-yy206:
+#line 1419 "scanner.cc"
+yy209:
        ++YYCURSOR;
        if(yybm[0+(yych = *YYCURSOR)] & 8) {
-               goto yy211;
+               goto yy214;
        }
-yy207:
+yy210:
 #line 471 "scanner.re"
        {
                                        cur = cursor;
@@ -1400,148 +1429,148 @@ yy207:
                                        iscfg = 0;
                                        return NUMBER;
                                }
-#line 1404 "scanner.cc"
-yy208:
+#line 1433 "scanner.cc"
+yy211:
        yych = *++YYCURSOR;
-       if(yych <= '0') goto yy212;
-       if(yych >= ':') goto yy212;
-yy209:
+       if(yych <= '0') goto yy215;
+       if(yych >= ':') goto yy215;
+yy212:
        ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
        if(yybm[0+yych] & 4) {
-               goto yy209;
+               goto yy212;
        }
        if(yych <= 0x0D) {
-               if(yych <= 0x08) goto yy211;
-               if(yych <= 0x0A) goto yy207;
-               if(yych >= 0x0D) goto yy207;
+               if(yych <= 0x08) goto yy214;
+               if(yych <= 0x0A) goto yy210;
+               if(yych >= 0x0D) goto yy210;
        } else {
                if(yych <= ' ') {
-                       if(yych >= ' ') goto yy207;
+                       if(yych >= ' ') goto yy210;
                } else {
-                       if(yych == ';') goto yy207;
+                       if(yych == ';') goto yy210;
                }
        }
-yy211:
+yy214:
        ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
-yy212:
+yy215:
        if(yybm[0+yych] & 8) {
-               goto yy211;
+               goto yy214;
        }
-       goto yy205;
-yy213:
+       goto yy208;
+yy216:
        YYMARKER = ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
        if(yybm[0+yych] & 16) {
-               goto yy213;
+               goto yy216;
        }
        if(yych <= '!') {
-               if(yych == 0x0A) goto yy205;
-               goto yy223;
+               if(yych == 0x0A) goto yy208;
+               goto yy226;
        } else {
-               if(yych <= '"') goto yy211;
-               if(yych <= '[') goto yy223;
-               goto yy225;
+               if(yych <= '"') goto yy214;
+               if(yych <= '[') goto yy226;
+               goto yy228;
        }
-yy215:
+yy218:
        YYMARKER = ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
        if(yybm[0+yych] & 32) {
-               goto yy215;
+               goto yy218;
        }
        if(yych <= '&') {
-               if(yych == 0x0A) goto yy205;
+               if(yych == 0x0A) goto yy208;
        } else {
-               if(yych <= '\'') goto yy211;
-               if(yych >= '\\') goto yy220;
+               if(yych <= '\'') goto yy214;
+               if(yych >= '\\') goto yy223;
        }
-yy217:
+yy220:
        ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
        if(yybm[0+yych] & 64) {
-               goto yy217;
+               goto yy220;
        }
-       if(yych <= '&') goto yy219;
-       if(yych <= '\'') goto yy221;
-       goto yy222;
-yy219:
+       if(yych <= '&') goto yy222;
+       if(yych <= '\'') goto yy224;
+       goto yy225;
+yy222:
        YYCURSOR = YYMARKER;
-       goto yy205;
-yy220:
+       goto yy208;
+yy223:
        YYMARKER = ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
        if(yych <= 0x0D) {
                if(yych <= 0x09) {
-                       if(yych <= 0x08) goto yy215;
-                       goto yy217;
+                       if(yych <= 0x08) goto yy218;
+                       goto yy220;
                } else {
-                       if(yych <= 0x0A) goto yy205;
-                       if(yych <= 0x0C) goto yy215;
-                       goto yy217;
+                       if(yych <= 0x0A) goto yy208;
+                       if(yych <= 0x0C) goto yy218;
+                       goto yy220;
                }
        } else {
                if(yych <= ' ') {
-                       if(yych <= 0x1F) goto yy215;
-                       goto yy217;
+                       if(yych <= 0x1F) goto yy218;
+                       goto yy220;
                } else {
-                       if(yych == ';') goto yy217;
-                       goto yy215;
+                       if(yych == ';') goto yy220;
+                       goto yy218;
                }
        }
-yy221:
+yy224:
        yych = *++YYCURSOR;
-       goto yy205;
-yy222:
+       goto yy208;
+yy225:
        ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
-       if(yych == 0x0A) goto yy219;
-       goto yy217;
-yy223:
+       if(yych == 0x0A) goto yy222;
+       goto yy220;
+yy226:
        ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
        if(yybm[0+yych] & 128) {
-               goto yy223;
+               goto yy226;
        }
-       if(yych <= '!') goto yy219;
-       if(yych <= '"') goto yy221;
-       goto yy226;
-yy225:
+       if(yych <= '!') goto yy222;
+       if(yych <= '"') goto yy224;
+       goto yy229;
+yy228:
        YYMARKER = ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
        if(yych <= 0x0D) {
                if(yych <= 0x09) {
-                       if(yych <= 0x08) goto yy213;
-                       goto yy223;
+                       if(yych <= 0x08) goto yy216;
+                       goto yy226;
                } else {
-                       if(yych <= 0x0A) goto yy205;
-                       if(yych <= 0x0C) goto yy213;
-                       goto yy223;
+                       if(yych <= 0x0A) goto yy208;
+                       if(yych <= 0x0C) goto yy216;
+                       goto yy226;
                }
        } else {
                if(yych <= ' ') {
-                       if(yych <= 0x1F) goto yy213;
-                       goto yy223;
+                       if(yych <= 0x1F) goto yy216;
+                       goto yy226;
                } else {
-                       if(yych == ';') goto yy223;
-                       goto yy213;
+                       if(yych == ';') goto yy226;
+                       goto yy216;
                }
        }
-yy226:
+yy229:
        ++YYCURSOR;
        if(YYLIMIT == YYCURSOR) YYFILL(1);
        yych = *YYCURSOR;
-       if(yych == 0x0A) goto yy219;
-       goto yy223;
+       if(yych == 0x0A) goto yy222;
+       goto yy226;
 }
 #line 483 "scanner.re"
 
index 856eac34e57f46bfd7dc3e8efefd34362bcbfddc..22820f3f38808f8d61ce9eac116e0c85faabbfb2 100644 (file)
@@ -1988,12 +1988,12 @@ void Scanner::config(const Str& cfg, const Str& val)
        {
                condEnumPrefix = strVal;
        }
-       else if (cfg.to_string() == "define:YYFILL:len")
+       else if (cfg.to_string() == "define:YYFILL@len")
        {
                yyFillLength = strVal;
                bUseYYFillParam = false;
        }
-       else if (cfg.to_string() == "define:YYSETSTATE:state")
+       else if (cfg.to_string() == "define:YYSETSTATE@state")
        {
                yySetStateParam = strVal;
                bUseYYSetStateParam = false;
index b0f14dbb2148bb160fd6c27de1752bc313f8f87c..a03008af79a7400db07040e393ec10a9e94cf678 100644 (file)
@@ -93,7 +93,7 @@ cname   = ":" name;
 space   = [ \t];
 ws      = (space | [\r\n]);
 eol     = ("\r\n" | "\n");
-config  = "re2c" cname+;
+config  = "re2c" cname+ ("@" name)?;
 value   = [^\r\n; \t]* | dstring | sstring;
 */
 
index 17cb4c1972e3cfaffadfeab48f726e0e972ee9fe..b70cb073c9f8aec7862896dfb335b3bfda8ef250 100755 (executable)
@@ -58,7 +58,7 @@ re2c:define:YYCTYPE     = "unsigned char";
 re2c:define:YYCURSOR    = s->cur;
 re2c:define:YYLIMIT     = s->lim;
 re2c:define:YYMARKER    = s->ptr;
-re2c:define:YYFILL:len  = #;
+re2c:define:YYFILL@len  = #;
 re2c:define:YYFILL:naked= 1;
 re2c:define:YYFILL      = "{ if(fill(s, #) >= 0) break; }";
 re2c:define:YYCONDITION = state;
index 17cb4c1972e3cfaffadfeab48f726e0e972ee9fe..b70cb073c9f8aec7862896dfb335b3bfda8ef250 100755 (executable)
@@ -58,7 +58,7 @@ re2c:define:YYCTYPE     = "unsigned char";
 re2c:define:YYCURSOR    = s->cur;
 re2c:define:YYLIMIT     = s->lim;
 re2c:define:YYMARKER    = s->ptr;
-re2c:define:YYFILL:len  = #;
+re2c:define:YYFILL@len  = #;
 re2c:define:YYFILL:naked= 1;
 re2c:define:YYFILL      = "{ if(fill(s, #) >= 0) break; }";
 re2c:define:YYCONDITION = state;
index 17cb4c1972e3cfaffadfeab48f726e0e972ee9fe..b70cb073c9f8aec7862896dfb335b3bfda8ef250 100755 (executable)
@@ -58,7 +58,7 @@ re2c:define:YYCTYPE     = "unsigned char";
 re2c:define:YYCURSOR    = s->cur;
 re2c:define:YYLIMIT     = s->lim;
 re2c:define:YYMARKER    = s->ptr;
-re2c:define:YYFILL:len  = #;
+re2c:define:YYFILL@len  = #;
 re2c:define:YYFILL:naked= 1;
 re2c:define:YYFILL      = "{ if(fill(s, #) >= 0) break; }";
 re2c:define:YYCONDITION = state;
index 17cb4c1972e3cfaffadfeab48f726e0e972ee9fe..b70cb073c9f8aec7862896dfb335b3bfda8ef250 100755 (executable)
@@ -58,7 +58,7 @@ re2c:define:YYCTYPE     = "unsigned char";
 re2c:define:YYCURSOR    = s->cur;
 re2c:define:YYLIMIT     = s->lim;
 re2c:define:YYMARKER    = s->ptr;
-re2c:define:YYFILL:len  = #;
+re2c:define:YYFILL@len  = #;
 re2c:define:YYFILL:naked= 1;
 re2c:define:YYFILL      = "{ if(fill(s, #) >= 0) break; }";
 re2c:define:YYCONDITION = state;
index 8a511d5b03b59e56370099ebdd4f5855bda51614..e9d3187258acc70cea41ea46d22e7b36cfd83a9b 100755 (executable)
@@ -68,7 +68,7 @@ re2c:define:YYCTYPE     = "unsigned char";
 re2c:define:YYCURSOR    = s->cur;
 re2c:define:YYLIMIT     = s->lim;
 re2c:define:YYMARKER    = s->tok;
-re2c:define:YYFILL:len  = #;
+re2c:define:YYFILL@len  = #;
 re2c:define:YYFILL:naked= 1;
 re2c:define:YYFILL      = "{ if(fill(s, #) >= 0) break; }";
 re2c:define:YYCONDITION = state;
index 76264fef6eecf31916ebb5657c78de6c3bf50754..921056cecda19ef293b9727cd5c0bf9ea0e20991 100755 (executable)
@@ -68,7 +68,7 @@ re2c:define:YYCTYPE     = "unsigned char";
 re2c:define:YYCURSOR    = s->cur;
 re2c:define:YYLIMIT     = s->lim;
 re2c:define:YYMARKER    = s->tok;
-re2c:define:YYFILL:len  = #;
+re2c:define:YYFILL@len  = #;
 re2c:define:YYFILL:naked= 1;
 re2c:define:YYFILL      = "{ if(fill(s, #) >= 0) break; }";
 re2c:define:YYCONDITION = state;
index 01361cf7d2db1e1d15d90237b8e5f22976eb740f..1e4fb32d58a6bfba694466b9cafd4bb3260edcc3 100755 (executable)
@@ -69,10 +69,10 @@ re2c:define:YYCTYPE          = "unsigned char";
 re2c:define:YYCURSOR         = s->cur;
 re2c:define:YYLIMIT          = s->lim;
 re2c:define:YYMARKER         = s->tok;
-re2c:define:YYFILL:len       = #;
+re2c:define:YYFILL@len       = #;
 re2c:define:YYFILL:naked     = 1;
 re2c:define:YYFILL           = "if(fill(s, #) >= 0) break;";
-re2c:define:YYSETSTATE:state = #;
+re2c:define:YYSETSTATE@state = #;
 re2c:define:YYSETSTATE       = "s->state = #;";
 re2c:define:YYGETSTATE       = "s->state";
 re2c:define:YYGETSTATE:naked = 1;
index 01361cf7d2db1e1d15d90237b8e5f22976eb740f..1e4fb32d58a6bfba694466b9cafd4bb3260edcc3 100755 (executable)
@@ -69,10 +69,10 @@ re2c:define:YYCTYPE          = "unsigned char";
 re2c:define:YYCURSOR         = s->cur;
 re2c:define:YYLIMIT          = s->lim;
 re2c:define:YYMARKER         = s->tok;
-re2c:define:YYFILL:len       = #;
+re2c:define:YYFILL@len       = #;
 re2c:define:YYFILL:naked     = 1;
 re2c:define:YYFILL           = "if(fill(s, #) >= 0) break;";
-re2c:define:YYSETSTATE:state = #;
+re2c:define:YYSETSTATE@state = #;
 re2c:define:YYSETSTATE       = "s->state = #;";
 re2c:define:YYGETSTATE       = "s->state";
 re2c:define:YYGETSTATE:naked = 1;
index 5f93a6a2cf198a357aaf513403469b76ddee3df6..2480b9349611691bf78037d3c289a1e964f9fc89 100755 (executable)
@@ -69,10 +69,10 @@ re2c:define:YYCTYPE          = "unsigned char";
 re2c:define:YYCURSOR         = s->cur;
 re2c:define:YYLIMIT          = s->lim;
 re2c:define:YYMARKER         = s->tok;
-re2c:define:YYFILL:len       = #;
+re2c:define:YYFILL@len       = #;
 re2c:define:YYFILL:naked     = 1;
 re2c:define:YYFILL           = "if(fill(s, #) >= 0) break;";
-re2c:define:YYSETSTATE:state = #;
+re2c:define:YYSETSTATE@state = #;
 re2c:define:YYSETSTATE       = "s->state = #;";
 re2c:define:YYGETSTATE       = "s->state";
 re2c:define:YYGETSTATE:naked = 1;
index 5f93a6a2cf198a357aaf513403469b76ddee3df6..2480b9349611691bf78037d3c289a1e964f9fc89 100755 (executable)
@@ -69,10 +69,10 @@ re2c:define:YYCTYPE          = "unsigned char";
 re2c:define:YYCURSOR         = s->cur;
 re2c:define:YYLIMIT          = s->lim;
 re2c:define:YYMARKER         = s->tok;
-re2c:define:YYFILL:len       = #;
+re2c:define:YYFILL@len       = #;
 re2c:define:YYFILL:naked     = 1;
 re2c:define:YYFILL           = "if(fill(s, #) >= 0) break;";
-re2c:define:YYSETSTATE:state = #;
+re2c:define:YYSETSTATE@state = #;
 re2c:define:YYSETSTATE       = "s->state = #;";
 re2c:define:YYGETSTATE       = "s->state";
 re2c:define:YYGETSTATE:naked = 1;