public boolean supportCHR() {
return context.header == null ? false : context.header.chr;
}
+ public boolean supportEDO() {
+ return context.header == null ? false : context.header.edo;
+ }
%}
letter = [a-zA-Z_]
do { return sym(SCLTerminals.DO); }
eq { return sym(options.supportEq ? SCLTerminals.EQ : SCLTerminals.ID); }
mdo { return sym(SCLTerminals.MDO); }
+ edo { return sym(supportEDO() ? SCLTerminals.EDO : SCLTerminals.ID); }
class { return sym(SCLTerminals.CLASS); }
effect { return sym(SCLTerminals.EFFECT); }
match { return sym(SCLTerminals.MATCH); }
"." { return sym(SCLTerminals.ATTACHED_DOT, "."); }
"-" { return sym(SCLTerminals.MINUS, "-"); }
// "<" {existentialVar} ">" { yybegin(XML); return sym(SCLTerminals.XML_BEGIN); }
+ "<<" { return sym(SCLTerminals.DOUBLE_LESS, "<<"); }
"<" { return sym(SCLTerminals.LESS, "<"); }
+ ">>" { return sym(SCLTerminals.DOUBLE_GREATER, ">>"); }
">" { return sym(SCLTerminals.GREATER, ">"); }
";" { return sym(SCLTerminals.SEMICOLON); }
"|" { return sym(SCLTerminals.BAR); }