| '{' { out "LC"; LC }
| '}' { out "RC"; RC }
| '@' { out "AT"; AT }
- | '%' { out "PC"; PC }
+ | '$' { out "DL"; DL }
| '.' { out "FS"; FS }
| ',' { out "CM"; CM }
| ';' { out "SC"; SC }
| '/' { out "SL"; SL }
+ | ';' { out "SC"; SC }
| "add" { out "ADD" ; ADD }
| "align" { out "ALIGN" ; ALIGN }
| "allbut" { out "BUT" ; BUT }
| "proj" { out "PROJ" ; PROJ }
| "property" { out "PROP" ; PROP }
| "select" { out "SELECT"; SELECT }
+ | "seq" { out "SEQ" ; SEQ }
| "source" { out "SOURCE"; SOURCE }
| "stat" { out "STAT" ; STAT }
| "sub" { out "SUB" ; SUB }
| IDEN { let id = Lexing.lexeme lexbuf in
out ("ID " ^ id); ID id }
| eof { out "EOF" ; EOF }
+ | "=" { out "BE" ; BE }
+ | "#" { out "COUNT" ; COUNT }
+ | "!" { out "NOT" ; NOT }
+ | "<" { out "LT" ; LT }
+ | "<=" { out "LE" ; LE }
+ | "==" { out "EQ" ; EQ }
+ | "&&" { out "AND" ; AND }
+ | "||" { out "OR" ; OR }
+ | "\\/" { out "UNION" ; UNION }
+ | "/\\" { out "INTER" ; INTER }
+ | ";;" { out "SEQ" ; SEQ }
and result_token = parse
| SPC { result_token lexbuf }
| "(*" { comm_token lexbuf; result_token lexbuf }