]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/ocaml/cic_disambiguation/disambiguate.mli
moved dummy_floc from Disambiguate to DisambiguateTypes, since it is now needed by...
[helm.git] / helm / ocaml / cic_disambiguation / disambiguate.mli
index ca33fa4226db2cdd4c667b1090692eb43634faa6..5de2e5759eaa6c2a68ce3da74b746e2e7241db7a 100644 (file)
@@ -29,33 +29,43 @@ exception NoWellTypedInterpretation
 exception PathNotWellFormed
 
 val interpretate_path :
context:Cic.name list -> env:DisambiguateTypes.environment -> CicAst.term ->
-  Cic.term
 context:Cic.name list -> DisambiguateTypes.term ->
+    Cic.term
 
+  (** @param multi true if multi aliases are used, false otherwise *)
+type aliases = bool * DisambiguateTypes.environment
 
 module type Disambiguator =
 sig
+  (** @param fresh_instances when set to true fresh instances will be generated
+   * for each number _and_ symbol in the disambiguation domain. Instances of the
+   * input AST will be ignored. Defaults to false. *)
   val disambiguate_term :
+    ?fresh_instances:bool ->
     dbd:Mysql.dbd ->
     context:Cic.context ->
     metasenv:Cic.metasenv ->
     ?initial_ugraph:CicUniv.universe_graph -> 
-    aliases:DisambiguateTypes.environment ->(* previous interpretation status *)
-    CicAst.term ->
+    aliases:aliases ->               (* previous interpretation status *)
+    DisambiguateTypes.term ->
     (DisambiguateTypes.environment * (* new interpretation status *)
      Cic.metasenv *                  (* new metasenv *)
      Cic.term *
-     CicUniv.universe_graph) list    (* disambiguated term *)
+     CicUniv.universe_graph) list *  (* disambiguated term *)
+    bool  (* has interactive_interpretation_choice been invoked? *)
 
+  (** @param fresh_instances as per disambiguate_term *)
   val disambiguate_obj :
+    ?fresh_instances:bool ->
     dbd:Mysql.dbd ->
-    aliases:DisambiguateTypes.environment ->(* previous interpretation status *)
+    aliases:aliases ->               (* previous interpretation status *)
     uri:UriManager.uri option ->     (* required only for inductive types *)
-    TacticAst.obj ->
+    GrafiteAst.obj ->
     (DisambiguateTypes.environment * (* new interpretation status *)
      Cic.metasenv *                  (* new metasenv *)
      Cic.obj *
-     CicUniv.universe_graph) list    (* disambiguated obj *)
+     CicUniv.universe_graph) list *  (* disambiguated obj *)
+    bool  (* has interactive_interpretation_choice been invoked? *)
 end
 
 module Make (C : DisambiguateTypes.Callbacks) : Disambiguator
@@ -79,3 +89,4 @@ sig
      Cic.term *
      CicUniv.universe_graph) list   (* disambiguated term *)
 end
+