]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/ocaml/cic_disambiguation/disambiguate.mli
ocaml 3.09 transition
[helm.git] / helm / ocaml / cic_disambiguation / disambiguate.mli
index 5de2e5759eaa6c2a68ce3da74b746e2e7241db7a..fc88b6cf84d54320fb092cb9a3f67763a1585897 100644 (file)
 
 (** {2 Disambiguation interface} *)
 
-exception NoWellTypedInterpretation
+exception NoWellTypedInterpretation of
+ (Token.flocation option * string Lazy.t) list
 exception PathNotWellFormed
 
 val interpretate_path :
-  context:Cic.name list -> DisambiguateTypes.term ->
+  context:Cic.name list -> CicNotationPt.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
@@ -42,13 +40,14 @@ sig
    * input AST will be ignored. Defaults to false. *)
   val disambiguate_term :
     ?fresh_instances:bool ->
-    dbd:Mysql.dbd ->
+    dbd:HMysql.dbd ->
     context:Cic.context ->
     metasenv:Cic.metasenv ->
     ?initial_ugraph:CicUniv.universe_graph -> 
-    aliases:aliases ->               (* previous interpretation status *)
-    DisambiguateTypes.term ->
-    (DisambiguateTypes.environment * (* new interpretation status *)
+    aliases:DisambiguateTypes.environment ->(* previous interpretation status *)
+    universe:DisambiguateTypes.multiple_environment option ->
+    CicNotationPt.term ->
+    ((DisambiguateTypes.domain_item * DisambiguateTypes.codomain_item) list *
      Cic.metasenv *                  (* new metasenv *)
      Cic.term *
      CicUniv.universe_graph) list *  (* disambiguated term *)
@@ -57,11 +56,12 @@ sig
   (** @param fresh_instances as per disambiguate_term *)
   val disambiguate_obj :
     ?fresh_instances:bool ->
-    dbd:Mysql.dbd ->
-    aliases:aliases ->               (* previous interpretation status *)
+    dbd:HMysql.dbd ->
+    aliases:DisambiguateTypes.environment ->(* previous interpretation status *)
+    universe:DisambiguateTypes.multiple_environment option ->
     uri:UriManager.uri option ->     (* required only for inductive types *)
-    GrafiteAst.obj ->
-    (DisambiguateTypes.environment * (* new interpretation status *)
+    CicNotationPt.obj ->
+    ((DisambiguateTypes.domain_item * DisambiguateTypes.codomain_item) list *
      Cic.metasenv *                  (* new metasenv *)
      Cic.obj *
      CicUniv.universe_graph) list *  (* disambiguated obj *)
@@ -70,23 +70,3 @@ end
 
 module Make (C : DisambiguateTypes.Callbacks) : Disambiguator
 
-module Trivial:
-sig
-  exception Ambiguous_term of string
-
-  (** disambiguate an _unanmbiguous_ term using dummy callbacks which fail if a
-    * choice from the user is needed to disambiguate the term
-    * @raise Ambiguous_term for ambiguous term *)
-  val disambiguate_string:
-    dbd:Mysql.dbd ->
-    ?context:Cic.context ->
-    ?metasenv:Cic.metasenv ->
-    ?initial_ugraph:CicUniv.universe_graph -> 
-    ?aliases:DisambiguateTypes.environment ->(* previous interpretation status*)
-    string ->
-    (DisambiguateTypes.environment * (* new interpretation status *)
-     Cic.metasenv *                 (* new metasenv *)
-     Cic.term *
-     CicUniv.universe_graph) list   (* disambiguated term *)
-end
-