]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/internal/parsing/parser/SCLLexer.flex
New type class MonadE and corresponding monad syntax with edo keyword
[simantics/platform.git] / bundles / org.simantics.scl.compiler / src / org / simantics / scl / compiler / internal / parsing / parser / SCLLexer.flex
index 0f45c2511b297a3e6575c7a953c6cd5e9f752c34..0aafe287261101a5ac1d099ae9b3c988e223a40b 100644 (file)
@@ -100,11 +100,12 @@ char_literal    = "'" ([^'\\\ufffd] | "\\" [^\ufffd]) "'"
   transformation  { return sym(supportCHR() ? SCLTerminals.ID : SCLTerminals.TRANSFORMATION); }
   select{whitespace}first { return sym(SCLTerminals.SELECT_FIRST); }
   select{whitespace}distinct { return sym(SCLTerminals.SELECT_DISTINCT); }
-  select          { return sym(SCLTerminals.SELECT); }
+  select          { return sym(supportCHR() ? SCLTerminals.CHR_SELECT : SCLTerminals.SELECT); }
   enforce         { return sym(SCLTerminals.ENFORCE); }
   do              { return sym(SCLTerminals.DO); }
   eq              { return sym(options.supportEq ? SCLTerminals.EQ : SCLTerminals.ID); }
   mdo             { return sym(SCLTerminals.MDO); }
+  edo             { return sym(SCLTerminals.EDO); }
   class           { return sym(SCLTerminals.CLASS); }
   effect          { return sym(SCLTerminals.EFFECT); }
   match           { return sym(SCLTerminals.MATCH); }