-/* Generated by re2c 0.13.2.dev on Sat Jan 19 21:52:28 2008 */
+/* Generated by re2c 0.13.2.dev on Sun Jan 20 16:36:17 2008 */
/* $Id$ */
#include <stdlib.h>
#include <string.h>
{
if (depth == 0)
{
- fatal("Curly braces are not allowed after #:='");
+ fatal("Curly braces are not allowed after ':='");
}
else if (--depth == 0)
{
{
if (depth == 0)
{
- fatal("Curly braces are not allowed after #:='");
+ fatal("Curly braces are not allowed after ':='");
}
else
{
if (cFlag && !condName.empty())
{
- // TODO: Drop marker
- o << "/* *********************************** */\n";
+ if (condDevider.length())
+ {
+ o << replaceParam(condDevider, condDeviderState, condName) << "\n";
+ }
o << condPrefix << condName << ":\n";
}
if (cFlag && bFlag && BitMap::first)
{
condEnumPrefix = strVal;
}
+ else if (cfg.to_string() == "cond:devider")
+ {
+ condDevider = strVal;
+ }
+ else if (cfg.to_string() == "cond:devider@state")
+ {
+ condDeviderState = strVal;
+ }
else if (cfg.to_string() == "define:YYFILL@len")
{
yyFillLength = strVal;
extern std::string labelPrefix;
extern std::string condPrefix;
extern std::string condEnumPrefix;
+extern std::string condDevider;
+extern std::string condDeviderState;
extern std::string yychConversion;
extern std::string yyFillLength;
extern std::string yySetConditionParam;
std::string labelPrefix("yy");
std::string condPrefix("yyc_");
std::string condEnumPrefix("yyc");
+std::string condDevider("/* *********************************** */");
+std::string condDeviderState("@@");
std::string yychConversion("");
std::string yyFillLength("@@");
std::string yySetConditionParam("@@");
--- /dev/null
+/* Generated by re2c */
+#line 1 "condition_01a.c.re"
+
+#line 5 "<stdout>"
+{
+ YYCTYPE yych;
+ switch(YYGETCONDITION()) {
+ case yyca: goto yyc_a;
+ case yycb: goto yyc_b;
+ }
+/**** State a ***/
+yyc_a:
+
+ if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
+ yych = *YYCURSOR;
+ switch(yych) {
+ case 'a': goto yy3;
+ default: goto yy2;
+ }
+yy2:
+yy3:
+ yych = *++YYCURSOR;
+ switch(yych) {
+ case 'b': goto yy4;
+ default: goto yy2;
+ }
+yy4:
+ ++YYCURSOR;
+#line 3 "condition_01a.c.re"
+ { }
+#line 32 "<stdout>"
+/**** State b ***/
+yyc_b:
+ if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
+ yych = *YYCURSOR;
+ switch(yych) {
+ case 'a': goto yy9;
+ default: goto yy8;
+ }
+yy8:
+yy9:
+ yych = *++YYCURSOR;
+ switch(yych) {
+ case 'b': goto yy10;
+ default: goto yy8;
+ }
+yy10:
+ ++YYCURSOR;
+#line 3 "condition_01a.c.re"
+ { }
+#line 52 "<stdout>"
+}
+#line 5 "condition_01a.c.re"
+
--- /dev/null
+/*!re2c
+re2c:cond:devider = "/**** State @@ ***\/";
+< a , b > "ab" { }
+
+*/
--- /dev/null
+/* Generated by re2c */
+#line 1 "condition_01b.c.re"
+
+#line 5 "<stdout>"
+{
+ YYCTYPE yych;
+ switch(YYGETCONDITION()) {
+ case yyca: goto yyc_a;
+ case yycb: goto yyc_b;
+ }
+yyc_a:
+
+ if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
+ yych = *YYCURSOR;
+ switch(yych) {
+ case 'a': goto yy3;
+ default: goto yy2;
+ }
+yy2:
+yy3:
+ yych = *++YYCURSOR;
+ switch(yych) {
+ case 'b': goto yy4;
+ default: goto yy2;
+ }
+yy4:
+ ++YYCURSOR;
+#line 3 "condition_01b.c.re"
+ { }
+#line 31 "<stdout>"
+yyc_b:
+ if((YYLIMIT - YYCURSOR) < 2) YYFILL(2);
+ yych = *YYCURSOR;
+ switch(yych) {
+ case 'a': goto yy9;
+ default: goto yy8;
+ }
+yy8:
+yy9:
+ yych = *++YYCURSOR;
+ switch(yych) {
+ case 'b': goto yy10;
+ default: goto yy8;
+ }
+yy10:
+ ++YYCURSOR;
+#line 3 "condition_01b.c.re"
+ { }
+#line 50 "<stdout>"
+}
+#line 5 "condition_01b.c.re"
+
--- /dev/null
+/*!re2c
+re2c:cond:devider = ;
+< a , b > "ab" { }
+
+*/