aboutsummaryrefslogtreecommitdiff
path: root/contrib/llvm/examples/OCaml-Kaleidoscope/Chapter2/toplevel.ml
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/llvm/examples/OCaml-Kaleidoscope/Chapter2/toplevel.ml')
-rw-r--r--contrib/llvm/examples/OCaml-Kaleidoscope/Chapter2/toplevel.ml34
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