X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=matitaB%2Fcomponents%2Fng_disambiguation%2FgrafiteDisambiguate.mli;h=fd9615cde7e5acbdc24bed36259677ebe3c6fe62;hb=3c8da07d7a5d7cf0432a83732a6d103f527afaef;hp=fcea29e437b80c9d1c5812bd1bfeda961cab292a;hpb=dee464f8cd331524663167659d1fad01e558d4e1;p=helm.git diff --git a/matitaB/components/ng_disambiguation/grafiteDisambiguate.mli b/matitaB/components/ng_disambiguation/grafiteDisambiguate.mli index fcea29e43..fd9615cde 100644 --- a/matitaB/components/ng_disambiguation/grafiteDisambiguate.mli +++ b/matitaB/components/ng_disambiguation/grafiteDisambiguate.mli @@ -28,6 +28,7 @@ type db class type g_status = object inherit Interpretations.g_status + inherit NCicLibrary.g_status method disambiguate_db: db end @@ -36,12 +37,25 @@ class virtual status : object ('self) inherit g_status inherit Interpretations.status + inherit NCicLibrary.status method set_disambiguate_db: db -> 'self method reset_disambiguate_db: unit -> 'self method set_disambiguate_status: #g_status -> 'self end -(* val eval_with_new_aliases: +(* reports disambiguation errors *) +exception Error of + (* location of a choice point *) + (Stdpp.location * + (* one possible choice (or no valid choice) *) + (GrafiteAst.alias_spec option * + (* list of asts together with the failing location and error msg *) + ((Stdpp.location * GrafiteAst.alias_spec) list * + Stdpp.location * string) list) + list) + list + + (* val eval_with_new_aliases: #status as 'status -> ('status -> 'a) -> ((Stdpp.location * DisambiguateTypes.domain_item) * GrafiteAst.alias_spec) list * 'a *) @@ -52,17 +66,23 @@ val add_to_interpr: #status as 'status -> (Stdpp.location * GrafiteAst.alias_spec) list -> 'status +(* val print_interpr: + #status as 'status -> unit *) + val add_to_disambiguation_univ: #status as 'status -> (DisambiguateTypes.domain_item * GrafiteAst.alias_spec) list -> 'status val aliases_for_objs: - #NCic.status -> NUri.uri list -> + #NCicLibrary.status -> NUri.uri list -> (DisambiguateTypes.domain_item * GrafiteAst.alias_spec) list (* args: print function, message (may be empty), status *) val dump_aliases: (string -> unit) -> string -> #status -> unit +(* reports the first source of ambiguity and its possible interpretations *) +exception Ambiguous_input of (Stdpp.location * GrafiteAst.alias_spec list) + exception BaseUriNotSetYet val disambiguate_nterm : @@ -81,7 +101,7 @@ type pattern = (string * NCic.term) list * NCic.term option val disambiguate_npattern: - #NCic.status -> GrafiteAst.npattern Disambiguate.disambiguator_input -> pattern + #NCicEnvironment.status -> GrafiteAst.npattern Disambiguate.disambiguator_input -> pattern val disambiguate_cic_appl_pattern: #status ->