diff options
Diffstat (limited to 'contrib/llvm/examples/OCaml-Kaleidoscope/Chapter2/toplevel.ml')
-rw-r--r-- | contrib/llvm/examples/OCaml-Kaleidoscope/Chapter2/toplevel.ml | 34 |
1 files changed, 0 insertions, 34 deletions
diff --git a/contrib/llvm/examples/OCaml-Kaleidoscope/Chapter2/toplevel.ml b/contrib/llvm/examples/OCaml-Kaleidoscope/Chapter2/toplevel.ml deleted file mode 100644 index 01c85bd70d29..000000000000 --- a/contrib/llvm/examples/OCaml-Kaleidoscope/Chapter2/toplevel.ml +++ /dev/null @@ -1,34 +0,0 @@ -(*===----------------------------------------------------------------------=== - * Top-Level parsing and JIT Driver - *===----------------------------------------------------------------------===*) - -(* top ::= definition | external | expression | ';' *) -let rec main_loop stream = - match Stream.peek stream with - | None -> () - - (* ignore top-level semicolons. *) - | Some (Token.Kwd ';') -> - Stream.junk stream; - main_loop stream - - | Some token -> - begin - try match token with - | Token.Def -> - ignore(Parser.parse_definition stream); - print_endline "parsed a function definition."; - | Token.Extern -> - ignore(Parser.parse_extern stream); - print_endline "parsed an extern."; - | _ -> - (* Evaluate a top-level expression into an anonymous function. *) - ignore(Parser.parse_toplevel stream); - print_endline "parsed a top-level expr"; - with Stream.Error s -> - (* Skip token for error recovery. *) - Stream.junk stream; - print_endline s; - end; - print_string "ready> "; flush stdout; - main_loop stream |