Advertisement
tudzic

Untitled

Oct 11th, 2014
215
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Scala 1.27 KB | None | 0 0
  1. (
  2.     regex("\\b(true|false)\\b".r)                                                                                              ^^ { BooleanLit(_) }
  3.     |regex("[0-9]+((((\\.)?)[0-9]*(E|e)((\\+|-)?)[0-9]+)|(\\.[0-9]*))".r)                                                      ^^ { FloatLit(_) }
  4.       |regex("[_A-Za-z][_A-Za-z0-9]*".r)                                                                                                                     ^^ { processIdent(_) }
  5.       |regex("[0-9]+".r)                                                                                                         ^^ { IntLit(_) }
  6.       |regex("\"((\\\\\\\\)|(\\\\b)|(\\\\t)|(\\\\f)|(\\\\r)|(\\\\n)|(\\\\\")|([^((\\n)|(\\t)|(\")|(\\\\))]))*\"".r)              ^^ { case str => StringLit(str.slice(1, str.size-1)) }
  7.     |regex("\"((\\t)|(\\\\\\\\)|(\\\\b)|(\\\\t)|(\\\\f)|(\\\\r)|(\\\\n)|(\\\\\")|([^((\\n)|(\")|(\\\\))]))+\"".r)              ^^ { case str => ErrorToken("Illegal tab in string: " + str.split("\\t")(0)) }
  8.     |regex("\"(([^((\\n)|(\\t)|(\")|(\\\\))])|(\\\\\\\\)|(\\\\b)|(\\\\t)|(\\\\f)|(\\\\r)|(\\\\n)|(\\\\\"))*".r)                ^^ { case str => ErrorToken("Unclosed string: " + str) }
  9.     |EofCh                                                                                                                     ^^^ EOF
  10.     |delim
  11.     )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement