X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Focaml%2Fcic_disambiguation%2Fdisambiguate.mli;h=5de2e5759eaa6c2a68ce3da74b746e2e7241db7a;hb=33a02e0b639217093eb63f30169aaa6ac8c78907;hp=b659b38ffac13a4828ac69c8bc76364740d1c39f;hpb=aeec9dd128be72caf5a39bac3a0ef34b564ecd8b;p=helm.git diff --git a/helm/ocaml/cic_disambiguation/disambiguate.mli b/helm/ocaml/cic_disambiguation/disambiguate.mli index b659b38ff..5de2e5759 100644 --- a/helm/ocaml/cic_disambiguation/disambiguate.mli +++ b/helm/ocaml/cic_disambiguation/disambiguate.mli @@ -23,33 +23,52 @@ * http://helm.cs.unibo.it/ *) -open DisambiguateTypes - (** {2 Disambiguation interface} *) exception NoWellTypedInterpretation +exception PathNotWellFormed + +val interpretate_path : + context:Cic.name list -> DisambiguateTypes.term -> + Cic.term -val interpretate: - context:Cic.name list -> - env:DisambiguateTypes.environment -> - CicAst.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:environment -> (* previous interpretation status *) - CicAst.term -> - (environment * (* new interpretation status *) + aliases:aliases -> (* previous interpretation status *) + DisambiguateTypes.term -> + (DisambiguateTypes.environment * (* new interpretation status *) + Cic.metasenv * (* new metasenv *) + Cic.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:aliases -> (* previous interpretation status *) + uri:UriManager.uri option -> (* required only for inductive types *) + GrafiteAst.obj -> + (DisambiguateTypes.environment * (* new interpretation status *) Cic.metasenv * (* new metasenv *) - Cic.term* - CicUniv.universe_graph) list (* disambiguated term *) + Cic.obj * + CicUniv.universe_graph) list * (* disambiguated obj *) + bool (* has interactive_interpretation_choice been invoked? *) end -module Make (C : Callbacks) : Disambiguator +module Make (C : DisambiguateTypes.Callbacks) : Disambiguator module Trivial: sig @@ -63,9 +82,9 @@ sig ?context:Cic.context -> ?metasenv:Cic.metasenv -> ?initial_ugraph:CicUniv.universe_graph -> - ?aliases:environment -> (* previous interpretation status *) + ?aliases:DisambiguateTypes.environment ->(* previous interpretation status*) string -> - (environment * (* new interpretation status *) + (DisambiguateTypes.environment * (* new interpretation status *) Cic.metasenv * (* new metasenv *) Cic.term * CicUniv.universe_graph) list (* disambiguated term *)