From 64dfc220b6307c867078ee5a860e92604f6df694 Mon Sep 17 00:00:00 2001 From: filliatr Date: Fri, 3 Dec 1999 15:35:59 +0000 Subject: renommage pour eviter pbm avec ocamldep (syntax error) git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@199 85f007b7-540e-0410-9357-904b9bb8a0f7 --- dev/base_include | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 dev/base_include (limited to 'dev/base_include') diff --git a/dev/base_include b/dev/base_include new file mode 100644 index 0000000000..8964873eb0 --- /dev/null +++ b/dev/base_include @@ -0,0 +1,60 @@ + +(* File to include to get some Coq facilities under the ocaml toplevel. + This file is loaded by include.ml *) + +(* We only assume that the variable COQTOP is set *) +let src_dir = + let coqtop = try Sys.getenv "COQTOP" with Not_found -> "." in + let coqtop = + if Sys.file_exists coqtop then + coqtop + else begin + print_endline ("Cannot find the sources in "^coqtop); + print_string "Where are they ? "; + read_line () + end + in + let add_dir dl = + Topdirs.dir_directory (List.fold_left Filename.concat "" dl) + in + List.iter add_dir + [ [ "config" ]; [ "dev" ]; [ "lib" ]; [ "kernel" ]; [ "library" ]; + [ "pretyping" ]; [ "parsing" ]; [ "proofs" ]; [ "tactics" ]; + [ "toplevel" ] ]; + coqtop +;; +(* Now Coq_config.cmi is accessible *) +Topdirs.dir_directory Coq_config.camlp4lib;; + +#use "top_printers.ml";; + +#install_printer (* identifier *) prid;; +#install_printer (* section_path *) prsp;; + +(* parsing of terms *) + +let parse_com = Pcoq.parse_string Pcoq.Command.command;; +let parse_tac = Pcoq.parse_string Pcoq.Tactic.tactic;; + +(* For compatibility reasons *) +let parse_ast = parse_com;; + +(* build a term of type constr without type-checking or resolution of + implicit syntax *) + +let raw_constr_of_string s = + Astterm.dbize_cci Evd.empty (unitize_env (Global.context())) + (parse_ast s);; + +let e s = + constr_of_com Evd.empty (Global.env()) (parse_ast s);; + +(* Get the current goal *) + +let getgoal x = top_goal_of_pftreestate (get_pftreestate x);; + +let get_nth_goal n = nth_goal_of_pftreestate n (get_pftreestate ());; +let current_goal () = get_nth_goal 1;; + +let pf_e gl s = + constr_of_com (project gl) (pf_env gl) (parse_ast s);; -- cgit v1.2.3