package binsec
Source file lexer.ml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254# 23 "src/cli/command/bbsse/lexer.mll" open Parser # 6 "src/cli/command/bbsse/lexer.ml" let __ocaml_lex_tables = { Lexing.lex_base = "\000\000\240\255\241\255\242\255\001\000\005\000\000\000\000\000\ \000\000\000\000\011\000\000\000\003\000\004\000\001\000\006\000\ \002\000\011\000\002\000\005\000\008\000\255\255\254\255\009\000\ \012\000\009\000\008\000\253\255\030\000\018\000\030\000\026\000\ \252\255\023\000\024\000\017\000\030\000\021\000\025\000\020\000\ \035\000\035\000\251\255\026\000\040\000\045\000\044\000\040\000\ \048\000\048\000\039\000\047\000\250\255\041\000\049\000\054\000\ \038\000\249\255\045\000\246\255\049\000\043\000\248\255\045\000\ \058\000\057\000\044\000\045\000\247\255\245\255\113\000\136\000\ \002\000"; Lexing.lex_backtrk = "\255\255\255\255\255\255\255\255\015\000\012\000\015\000\015\000\ \015\000\015\000\015\000\015\000\015\000\015\000\015\000\015\000\ \015\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\011\000\ \255\255"; Lexing.lex_default = "\001\000\000\000\000\000\000\000\072\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\000\000\255\255\ \255\255\255\255\255\255\000\000\255\255\255\255\255\255\255\255\ \000\000\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\000\000\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\255\255\255\255\000\000\255\255\255\255\255\255\ \255\255\000\000\255\255\000\000\255\255\255\255\000\000\255\255\ \255\255\255\255\255\255\255\255\000\000\000\000\255\255\255\255\ \072\000"; Lexing.lex_trans = "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\005\000\003\000\003\000\003\000\005\000\005\000\000\000\ \000\000\000\000\005\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \005\000\000\000\000\000\004\000\000\000\005\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \006\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\007\000\013\000\010\000\033\000\016\000\012\000\019\000\ \020\000\015\000\024\000\060\000\053\000\027\000\043\000\014\000\ \008\000\023\000\063\000\009\000\069\000\011\000\028\000\054\000\ \070\000\022\000\017\000\018\000\021\000\025\000\026\000\029\000\ \030\000\031\000\032\000\034\000\035\000\036\000\037\000\038\000\ \039\000\040\000\041\000\042\000\044\000\045\000\046\000\047\000\ \048\000\049\000\050\000\051\000\052\000\058\000\055\000\056\000\ \057\000\059\000\061\000\062\000\064\000\065\000\066\000\067\000\ \068\000\071\000\071\000\071\000\071\000\071\000\071\000\071\000\ \071\000\071\000\071\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\071\000\071\000\071\000\071\000\071\000\071\000\ \071\000\071\000\071\000\071\000\071\000\071\000\071\000\071\000\ \071\000\071\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\071\000\071\000\071\000\071\000\071\000\071\000\000\000\ \000\000\000\000\071\000\071\000\071\000\071\000\071\000\071\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\071\000\071\000\071\000\071\000\071\000\071\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \002\000\255\255\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\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\ \000\000\000\000\000\000\000\000\000\000\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\004\000\072\000\000\000\005\000\255\255\ \255\255\255\255\005\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\ \000\000\255\255\255\255\000\000\255\255\005\000\255\255\255\255\ \255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\ \000\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\000\000\000\000\000\000\012\000\000\000\000\000\018\000\ \019\000\000\000\023\000\009\000\010\000\026\000\011\000\000\000\ \000\000\014\000\008\000\000\000\007\000\000\000\013\000\010\000\ \006\000\015\000\016\000\017\000\020\000\024\000\025\000\028\000\ \029\000\030\000\031\000\033\000\034\000\035\000\036\000\037\000\ \038\000\039\000\040\000\041\000\043\000\044\000\045\000\046\000\ \047\000\048\000\049\000\050\000\051\000\053\000\054\000\055\000\ \056\000\058\000\060\000\061\000\063\000\064\000\065\000\066\000\ \067\000\070\000\070\000\070\000\070\000\070\000\070\000\070\000\ \070\000\070\000\070\000\255\255\255\255\255\255\255\255\255\255\ \255\255\255\255\070\000\070\000\070\000\070\000\070\000\070\000\ \071\000\071\000\071\000\071\000\071\000\071\000\071\000\071\000\ \071\000\071\000\255\255\255\255\255\255\255\255\255\255\255\255\ \255\255\071\000\071\000\071\000\071\000\071\000\071\000\255\255\ \255\255\255\255\070\000\070\000\070\000\070\000\070\000\070\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\071\000\071\000\071\000\071\000\071\000\071\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\ \000\000\004\000\072\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\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 token lexbuf = __ocaml_lex_token_rec lexbuf 0 and __ocaml_lex_token_rec lexbuf __ocaml_lex_state = match Lexing.engine __ocaml_lex_tables __ocaml_lex_state lexbuf with | 0 -> # 36 "src/cli/command/bbsse/lexer.mll" ( EXPECT ) # 164 "src/cli/command/bbsse/lexer.ml" | 1 -> # 37 "src/cli/command/bbsse/lexer.mll" ( IS ) # 169 "src/cli/command/bbsse/lexer.ml" | 2 -> # 38 "src/cli/command/bbsse/lexer.mll" ( OPAQUE ) # 174 "src/cli/command/bbsse/lexer.ml" | 3 -> # 39 "src/cli/command/bbsse/lexer.mll" ( BRANCH ) # 179 "src/cli/command/bbsse/lexer.ml" | 4 -> # 40 "src/cli/command/bbsse/lexer.mll" ( FALLTHROUGH ) # 184 "src/cli/command/bbsse/lexer.ml" | 5 -> # 41 "src/cli/command/bbsse/lexer.mll" ( UNREACHABLE ) # 189 "src/cli/command/bbsse/lexer.ml" | 6 -> # 42 "src/cli/command/bbsse/lexer.mll" ( CLEAR ) # 194 "src/cli/command/bbsse/lexer.ml" | 7 -> # 43 "src/cli/command/bbsse/lexer.mll" ( SKIP ) # 199 "src/cli/command/bbsse/lexer.ml" | 8 -> # 44 "src/cli/command/bbsse/lexer.mll" ( PROCESS ) # 204 "src/cli/command/bbsse/lexer.ml" | 9 -> # 45 "src/cli/command/bbsse/lexer.mll" ( CALL ) # 209 "src/cli/command/bbsse/lexer.ml" | 10 -> # 46 "src/cli/command/bbsse/lexer.mll" ( AT ) # 214 "src/cli/command/bbsse/lexer.ml" | 11 -> let # 47 "src/cli/command/bbsse/lexer.mll" s # 220 "src/cli/command/bbsse/lexer.ml" = Lexing.sub_lexeme lexbuf lexbuf.Lexing.lex_start_pos lexbuf.Lexing.lex_curr_pos in # 47 "src/cli/command/bbsse/lexer.mll" ( ADDRESS (Z.of_string s)) # 224 "src/cli/command/bbsse/lexer.ml" | 12 -> # 48 "src/cli/command/bbsse/lexer.mll" ( token lexbuf ) # 229 "src/cli/command/bbsse/lexer.ml" | 13 -> # 50 "src/cli/command/bbsse/lexer.mll" ( Lexing.new_line lexbuf; token lexbuf ) # 234 "src/cli/command/bbsse/lexer.ml" | 14 -> # 51 "src/cli/command/bbsse/lexer.mll" ( EOF ) # 239 "src/cli/command/bbsse/lexer.ml" | 15 -> # 53 "src/cli/command/bbsse/lexer.mll" ( let open Lexing in let line = (lexeme_start_p lexbuf).pos_lnum in let msg = Printf.sprintf "Unkown lexeme %s at line %d" (lexeme lexbuf) line in failwith msg ) # 249 "src/cli/command/bbsse/lexer.ml" | __ocaml_lex_state -> lexbuf.Lexing.refill_buff lexbuf; __ocaml_lex_token_rec lexbuf __ocaml_lex_state ;;