import org.simantics.scl.compiler.internal.parsing.Token;
import org.simantics.scl.compiler.errors.Locations;
import org.simantics.scl.compiler.internal.parsing.exceptions.SCLSyntaxErrorException;
import org.simantics.scl.compiler.internal.parsing.Token;
import org.simantics.scl.compiler.errors.Locations;
import org.simantics.scl.compiler.internal.parsing.exceptions.SCLSyntaxErrorException;
private Token sym(int id) {
return new Token(id, yychar, yychar+yylength(), yytext());
private Token sym(int id) {
return new Token(id, yychar, yychar+yylength(), yytext());
private Token sym(int id, String text) {
return new Token(id, yychar, yychar+yylength(), text);
}
private Token sym(int id, String text) {
return new Token(id, yychar, yychar+yylength(), text);
}
else { return sym(SCLTerminals.ELSE); }
where { return sym(SCLTerminals.WHERE); }
when { return sym(SCLTerminals.WHEN); }
else { return sym(SCLTerminals.ELSE); }
where { return sym(SCLTerminals.WHERE); }
when { return sym(SCLTerminals.WHEN); }
abstract{whitespace}rule { return sym(SCLTerminals.ABSTRACT_RULE); }
extends { return sym(SCLTerminals.EXTENDS); }
mapping{whitespace}relation { return sym(SCLTerminals.MAPPING_RELATION); }
abstract{whitespace}rule { return sym(SCLTerminals.ABSTRACT_RULE); }
extends { return sym(SCLTerminals.EXTENDS); }
mapping{whitespace}relation { return sym(SCLTerminals.MAPPING_RELATION); }
select{whitespace}first { return sym(SCLTerminals.SELECT_FIRST); }
select{whitespace}distinct { return sym(SCLTerminals.SELECT_DISTINCT); }
select{whitespace}first { return sym(SCLTerminals.SELECT_FIRST); }
select{whitespace}distinct { return sym(SCLTerminals.SELECT_DISTINCT); }
enforce { return sym(SCLTerminals.ENFORCE); }
do { return sym(SCLTerminals.DO); }
eq { return sym(options.supportEq ? SCLTerminals.EQ : SCLTerminals.ID); }
enforce { return sym(SCLTerminals.ENFORCE); }
do { return sym(SCLTerminals.DO); }
eq { return sym(options.supportEq ? SCLTerminals.EQ : SCLTerminals.ID); }
// relation { return sym(SCLTerminals.RELATION); }
as { return sym(SCLTerminals.AS); }
by { return sym(SCLTerminals.BY); }
// relation { return sym(SCLTerminals.RELATION); }
as { return sym(SCLTerminals.AS); }
by { return sym(SCLTerminals.BY); }
{queryOp} { return sym(SCLTerminals.QUERY_OP); }
"@" { return sym(SCLTerminals.AT); }
"{" { return sym(SCLTerminals.LBRACE); }
{queryOp} { return sym(SCLTerminals.QUERY_OP); }
"@" { return sym(SCLTerminals.AT); }
"{" { return sym(SCLTerminals.LBRACE); }
{separatedDot} { return sym(SCLTerminals.SEPARATED_DOT, "."); }
"." { return sym(SCLTerminals.ATTACHED_DOT, "."); }
"-" { return sym(SCLTerminals.MINUS, "-"); }
{separatedDot} { return sym(SCLTerminals.SEPARATED_DOT, "."); }
"." { return sym(SCLTerminals.ATTACHED_DOT, "."); }
"-" { return sym(SCLTerminals.MINUS, "-"); }
"<" { return sym(SCLTerminals.LESS, "<"); }
">" { return sym(SCLTerminals.GREATER, ">"); }
";" { return sym(SCLTerminals.SEMICOLON); }
"<" { return sym(SCLTerminals.LESS, "<"); }
">" { return sym(SCLTerminals.GREATER, ">"); }
";" { return sym(SCLTerminals.SEMICOLON); }
"=" { return sym(SCLTerminals.EQUALS); }
"::" { return sym(SCLTerminals.HASTYPE); }
":" { return sym(SCLTerminals.COLON); }
"=" { return sym(SCLTerminals.EQUALS); }
"::" { return sym(SCLTerminals.HASTYPE); }
":" { return sym(SCLTerminals.COLON); }
"\\" { return sym(SCLTerminals.LAMBDA); }
"\"\"\"" { string.setLength(0); stringStart=yychar; yybegin(LONG_STRING); return sym(SCLTerminals.BEGIN_STRING); }
"\"" { string.setLength(0); stringStart=yychar; yybegin(STRING); return sym(SCLTerminals.BEGIN_STRING); }
"\\" { return sym(SCLTerminals.LAMBDA); }
"\"\"\"" { string.setLength(0); stringStart=yychar; yybegin(LONG_STRING); return sym(SCLTerminals.BEGIN_STRING); }
"\"" { string.setLength(0); stringStart=yychar; yybegin(STRING); return sym(SCLTerminals.BEGIN_STRING); }