progs/lexer/lexer.sc
changeset 846 c24d16c89c48
parent 827 47437f461fff
child 935 3fb9b05465dd
equal deleted inserted replaced
845:6af90edc5086 846:c24d16c89c48
   202 val ID = SYM ~ (SYM | DIGIT).% 
   202 val ID = SYM ~ (SYM | DIGIT).% 
   203 val NUM = PLUS(DIGIT)
   203 val NUM = PLUS(DIGIT)
   204 val KEYWORD : Rexp = "skip" | "while" | "do" | "if" | "then" | "else" | "read" | "write" 
   204 val KEYWORD : Rexp = "skip" | "while" | "do" | "if" | "then" | "else" | "read" | "write" 
   205 val SEMI: Rexp = ";"
   205 val SEMI: Rexp = ";"
   206 val OP: Rexp = ":=" | "=" | "-" | "+" | "*" | "!=" | "<" | ">"
   206 val OP: Rexp = ":=" | "=" | "-" | "+" | "*" | "!=" | "<" | ">"
   207 val WHITESPACE = PLUS(" " | "\n" | "\t")
   207 val WHITESPACE = PLUS(" " | "\n" | "\t" | "\r")
   208 val RPAREN: Rexp = "{"
   208 val RPAREN: Rexp = "{"
   209 val LPAREN: Rexp = "}"
   209 val LPAREN: Rexp = "}"
   210 val STRING: Rexp = "\"" ~ SYM.% ~ "\""
   210 val STRING: Rexp = "\"" ~ SYM.% ~ "\""
   211 
   211 
   212 
   212