]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/matita/matitaTypes.mli
moved coercions away (work in progress)
[helm.git] / helm / matita / matitaTypes.mli
index 144c0c1f2b6212a38d0bc4df6923f5cfa36e429f..ebf208b92954aa84a4243a61d32e3c785cfe2d79 100644 (file)
@@ -33,9 +33,14 @@ val command_error : string -> 'a
 exception Option_error of string * string
 exception Unbound_identifier of string
 
+type incomplete_proof = {
+  proof: ProofEngineTypes.proof;
+  stack: Continuationals.Stack.t;
+}
+
 type proof_status =
     No_proof
-  | Incomplete_proof of ProofEngineTypes.status
+  | Incomplete_proof of incomplete_proof
   | Proof of ProofEngineTypes.proof
   | Intermediate of Cic.metasenv
 
@@ -47,29 +52,27 @@ type option_value =
 type options = option_value StringMap.t
 val no_options : 'a StringMap.t
 
-type ast_command = (CicNotationPt.term, GrafiteAst.obj) GrafiteAst.command
-type moo = ast_command list * GrafiteAst.metadata list  (** <moo, metadata> *)
-
 type status = {
   aliases: DisambiguateTypes.environment;         (** disambiguation aliases *)
   multi_aliases: DisambiguateTypes.multiple_environment;
-  moo_content_rev: moo;
+  moo_content_rev: GrafiteMarshal.moo;
   proof_status: proof_status;                             (** logical status *)
   options: options;
-  objects: (UriManager.uri * string) list;  (** in-scope objects, with paths *)
+  objects: UriManager.uri list;  (** in-scope objects *)
+  coercions: UriManager.uri list;                      (** defined coercions *)
   notation_ids: CicNotation.notation_id list;      (** in-scope notation ids *)
 }
 
 val set_metasenv: Cic.metasenv -> status -> status
 
   (** list is not reversed, head command will be the first emitted *)
-val add_moo_content: ast_command list -> status -> status
+val add_moo_content: GrafiteMarshal.ast_command list -> status -> status
 val add_moo_metadata: GrafiteAst.metadata list -> status -> status
 
 val dump_status : status -> unit
-val get_option : status -> StringMap.key -> option_value
-val get_string_option : status -> StringMap.key -> string
-val set_option : status -> StringMap.key -> string -> status
+val get_option : status -> string -> option_value
+val get_string_option : status -> string -> string
+val set_option : status -> string -> string -> status
 
 class type console =
   object
@@ -109,3 +112,14 @@ class type mathViewer =
     method show_uri_list :
       ?reuse:bool -> entry:mathViewer_entry -> UriManager.uri list -> unit
   end
+
+val qualify: status -> string -> string
+
+val get_current_proof: status -> ProofEngineTypes.proof
+val get_proof_metasenv: status ->  Cic.metasenv
+val get_proof_context: status -> ProofEngineTypes.goal -> Cic.context 
+val get_proof_conclusion: status -> ProofEngineTypes.goal -> Cic.term
+val get_stack: status -> Continuationals.Stack.t
+
+val set_stack: Continuationals.Stack.t -> status -> status
+