pieuvre/lexer.mll
2022-05-10 15:00:19 +02:00

24 lines
694 B
OCaml

{
open Parser
}
rule token = parse
| [' ' '\t' '\n'] { token lexbuf }
| eof { EOF }
| '(' { LPAREN }
| ')' { RPAREN }
| "->" { RARROW }
| '~' { TILDE }
| "intro" { INTRO }
| "assumption" { ASSUMPTION }
| "apply" { APPLY }
| "elim" { ELIM }
| "cut" { CUT }
| "False" { FALSE }
| ['A'-'Z']+['0'-'9']* as s { TYPE_NAME s }
| ['a'-'z']+['0'-'9']* as s { VAR_NAME s }
| '.' { DOT }