type token = | Space | Token | Type | Lname of (string) | Uname of (string) | Separator | Lparen | Rparen | Comma | Colon | Code of (string * int * int) | Error | Alt | Loop_plus | Loop_star | Dollar | Lbracket | Rbracket | Eof val text : (Lexing.lexbuf -> token) -> Lexing.lexbuf -> Ast.text