# 6 "lexer.mll" open Parser # 6 "lexer.ml" let __ocaml_lex_tables = { Lexing.lex_base = "\000\000\236\255\237\255\002\000\239\255\240\255\241\255\242\255\ \002\000\244\255\245\255\246\255\247\255\248\255\249\255\078\000\ \160\000\192\000\020\000\003\000\050\000\095\000\255\255\052\000\ \250\255\027\000\032\000\039\000\031\000\254\255\253\255\044\000\ \045\000\243\255\046\000\027\000\252\255\059\000\001\000\255\255\ \028\000\254\255\029\000"; Lexing.lex_backtrk = "\255\255\255\255\255\255\017\000\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\004\000\ \003\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\002\000\255\255\002\000\001\000\255\255\ \000\000\255\255\000\000"; Lexing.lex_default = "\255\255\000\000\000\000\255\255\000\000\000\000\000\000\000\000\ \255\255\000\000\000\000\000\000\000\000\000\000\000\000\255\255\ \255\255\255\255\255\255\255\255\020\000\023\000\000\000\023\000\ \000\000\255\255\255\255\255\255\255\255\000\000\000\000\031\000\ \034\000\000\000\034\000\037\000\000\000\037\000\255\255\000\000\ \042\000\000\000\042\000"; Lexing.lex_trans = "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\003\000\003\000\003\000\003\000\003\000\000\000\003\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \003\000\000\000\003\000\000\000\002\000\018\000\039\000\000\000\ \014\000\012\000\004\000\005\000\013\000\020\000\000\000\019\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\024\000\009\000\000\000\017\000\000\000\000\000\007\000\ \038\000\015\000\015\000\015\000\015\000\015\000\015\000\015\000\ \015\000\015\000\015\000\015\000\015\000\015\000\015\000\015\000\ \015\000\015\000\015\000\015\000\015\000\015\000\015\000\015\000\ \015\000\015\000\015\000\011\000\021\000\010\000\021\000\016\000\ \255\255\016\000\016\000\016\000\016\000\016\000\016\000\016\000\ \016\000\016\000\016\000\016\000\016\000\016\000\016\000\016\000\ \016\000\016\000\016\000\016\000\016\000\016\000\016\000\016\000\ \016\000\016\000\016\000\008\000\006\000\031\000\015\000\015\000\ \015\000\015\000\015\000\015\000\015\000\015\000\015\000\015\000\ \025\000\021\000\026\000\027\000\028\000\029\000\022\000\015\000\ \015\000\015\000\015\000\015\000\015\000\015\000\015\000\015\000\ \015\000\015\000\015\000\015\000\015\000\015\000\015\000\015\000\ \015\000\015\000\015\000\015\000\015\000\015\000\015\000\015\000\ \015\000\032\000\033\000\032\000\000\000\015\000\000\000\015\000\ \015\000\015\000\015\000\015\000\015\000\015\000\015\000\015\000\ \015\000\015\000\015\000\015\000\015\000\015\000\015\000\015\000\ \015\000\015\000\015\000\015\000\015\000\015\000\015\000\015\000\ \015\000\017\000\017\000\000\000\000\000\017\000\000\000\000\000\ \016\000\016\000\016\000\016\000\016\000\016\000\016\000\016\000\ \016\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\ \017\000\016\000\016\000\016\000\016\000\016\000\016\000\016\000\ \016\000\016\000\016\000\016\000\016\000\016\000\016\000\016\000\ \016\000\016\000\016\000\016\000\016\000\016\000\016\000\016\000\ \016\000\016\000\016\000\000\000\000\000\000\000\030\000\016\000\ \001\000\016\000\016\000\016\000\016\000\016\000\016\000\016\000\ \016\000\016\000\016\000\016\000\016\000\016\000\016\000\016\000\ \016\000\016\000\016\000\016\000\016\000\016\000\016\000\016\000\ \016\000\016\000\016\000\036\000\041\000\255\255\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\255\255\255\255\255\255\000\000\ \000\000\000\000\255\255\000\000\255\255\000\000\000\000\000\000\ \000\000\000\000\000\000\255\255\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\255\255\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000"; Lexing.lex_check = "\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\000\000\000\000\003\000\003\000\000\000\255\255\003\000\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \000\000\255\255\003\000\255\255\000\000\000\000\038\000\255\255\ \000\000\000\000\000\000\000\000\000\000\019\000\255\255\000\000\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\018\000\000\000\255\255\000\000\255\255\255\255\000\000\ \035\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\020\000\000\000\023\000\000\000\ \037\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\008\000\015\000\015\000\ \015\000\015\000\015\000\015\000\015\000\015\000\015\000\015\000\ \018\000\021\000\025\000\026\000\027\000\028\000\021\000\015\000\ \015\000\015\000\015\000\015\000\015\000\015\000\015\000\015\000\ \015\000\015\000\015\000\015\000\015\000\015\000\015\000\015\000\ \015\000\015\000\015\000\015\000\015\000\015\000\015\000\015\000\ \015\000\031\000\032\000\034\000\255\255\015\000\255\255\015\000\ \015\000\015\000\015\000\015\000\015\000\015\000\015\000\015\000\ \015\000\015\000\015\000\015\000\015\000\015\000\015\000\015\000\ \015\000\015\000\015\000\015\000\015\000\015\000\015\000\015\000\ \015\000\017\000\017\000\255\255\255\255\017\000\255\255\255\255\ \016\000\016\000\016\000\016\000\016\000\016\000\016\000\016\000\ \016\000\016\000\255\255\255\255\255\255\255\255\255\255\255\255\ \017\000\016\000\016\000\016\000\016\000\016\000\016\000\016\000\ \016\000\016\000\016\000\016\000\016\000\016\000\016\000\016\000\ \016\000\016\000\016\000\016\000\016\000\016\000\016\000\016\000\ \016\000\016\000\016\000\255\255\255\255\255\255\017\000\016\000\ \000\000\016\000\016\000\016\000\016\000\016\000\016\000\016\000\ \016\000\016\000\016\000\016\000\016\000\016\000\016\000\016\000\ \016\000\016\000\016\000\016\000\016\000\016\000\016\000\016\000\ \016\000\016\000\016\000\035\000\040\000\042\000\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\031\000\032\000\034\000\255\255\ \255\255\255\255\020\000\255\255\023\000\255\255\255\255\255\255\ \255\255\255\255\255\255\037\000\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\021\000\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255"; Lexing.lex_base_code = ""; Lexing.lex_backtrk_code = ""; Lexing.lex_default_code = ""; Lexing.lex_trans_code = ""; Lexing.lex_check_code = ""; Lexing.lex_code = ""; } let rec scan_file lexbuf = __ocaml_lex_scan_file_rec lexbuf 0 and __ocaml_lex_scan_file_rec lexbuf __ocaml_lex_state = match Lexing.engine __ocaml_lex_tables __ocaml_lex_state lexbuf with | 0 -> # 12 "lexer.mll" ( Space ) # 166 "lexer.ml" | 1 -> # 14 "lexer.mll" ( Token ) # 171 "lexer.ml" | 2 -> # 16 "lexer.mll" ( Type ) # 177 "lexer.ml" | 3 -> # 19 "lexer.mll" ( let s = Lexing.lexeme lexbuf in Lname s ) # 184 "lexer.ml" | 4 -> # 23 "lexer.mll" ( let s = Lexing.lexeme lexbuf in Uname s ) # 191 "lexer.ml" | 5 -> # 27 "lexer.mll" ( Separator ) # 196 "lexer.ml" | 6 -> # 29 "lexer.mll" ( Lparen ) # 201 "lexer.ml" | 7 -> # 31 "lexer.mll" ( Comma ) # 206 "lexer.ml" | 8 -> # 33 "lexer.mll" ( Rparen ) # 211 "lexer.ml" | 9 -> # 35 "lexer.mll" ( Lbracket ) # 216 "lexer.ml" | 10 -> # 37 "lexer.mll" ( Rbracket ) # 221 "lexer.ml" | 11 -> # 39 "lexer.mll" ( Colon ) # 226 "lexer.ml" | 12 -> # 41 "lexer.mll" ( let s = Lexing.lexeme lexbuf in Code (String.sub s 2 (String.length s - 4), 0, 0) ) # 233 "lexer.ml" | 13 -> # 45 "lexer.mll" ( Error ) # 238 "lexer.ml" | 14 -> # 47 "lexer.mll" ( Alt ) # 243 "lexer.ml" | 15 -> # 49 "lexer.mll" ( Loop_plus ) # 248 "lexer.ml" | 16 -> # 51 "lexer.mll" ( Loop_star ) # 253 "lexer.ml" | 17 -> # 53 "lexer.mll" ( Space ) # 258 "lexer.ml" | 18 -> # 55 "lexer.mll" ( Dollar ) # 263 "lexer.ml" | 19 -> # 57 "lexer.mll" ( Eof ) # 268 "lexer.ml" | __ocaml_lex_state -> lexbuf.Lexing.refill_buff lexbuf; __ocaml_lex_scan_file_rec lexbuf __ocaml_lex_state and scan_header lexbuf = __ocaml_lex_scan_header_rec lexbuf 35 and __ocaml_lex_scan_header_rec lexbuf __ocaml_lex_state = match Lexing.engine __ocaml_lex_tables __ocaml_lex_state lexbuf with | 0 -> # 61 "lexer.mll" ( Separator ) # 279 "lexer.ml" | 1 -> # 63 "lexer.mll" ( Code("%", 0, 0) ) # 284 "lexer.ml" | 2 -> # 65 "lexer.mll" ( Code(Lexing.lexeme lexbuf, 0, 0) ) # 289 "lexer.ml" | 3 -> # 67 "lexer.mll" ( Eof ) # 294 "lexer.ml" | __ocaml_lex_state -> lexbuf.Lexing.refill_buff lexbuf; __ocaml_lex_scan_header_rec lexbuf __ocaml_lex_state and scan_rest lexbuf = __ocaml_lex_scan_rest_rec lexbuf 40 and __ocaml_lex_scan_rest_rec lexbuf __ocaml_lex_state = match Lexing.engine __ocaml_lex_tables __ocaml_lex_state lexbuf with | 0 -> # 71 "lexer.mll" ( Code(Lexing.lexeme lexbuf, 0, 0) ) # 305 "lexer.ml" | 1 -> # 73 "lexer.mll" ( Eof ) # 310 "lexer.ml" | __ocaml_lex_state -> lexbuf.Lexing.refill_buff lexbuf; __ocaml_lex_scan_rest_rec lexbuf __ocaml_lex_state ;;