X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2FgTopLevel%2FoldDisambiguate.ml;h=db118b5187516a129ed59278a3e2cd059f9a2953;hb=978a25d9392e5fc1a19fa37c86339c5d0b67ddd6;hp=39be585e55e3082dd4256fd7207f9ffb6c12f6ec;hpb=fe1e7e151af9690f312259a4c1c969a1388bee5f;p=helm.git diff --git a/helm/gTopLevel/oldDisambiguate.ml b/helm/gTopLevel/oldDisambiguate.ml index 39be585e5..db118b518 100644 --- a/helm/gTopLevel/oldDisambiguate.ml +++ b/helm/gTopLevel/oldDisambiguate.ml @@ -46,8 +46,8 @@ module type Callbacks = ?enable_button_for_non_vars:bool -> title:string -> msg:string -> id:string -> string list -> string list val interactive_interpretation_choice : - (string * string) list list -> int - val input_or_locate_uri : title:string -> UriManager.uri + (string * string) list list -> int list + val input_or_locate_uri : title:string -> ?id:string -> unit -> UriManager.uri end ;; @@ -78,7 +78,7 @@ module Make(C:Callbacks) = [] -> [UriManager.string_of_uri (C.input_or_locate_uri - ~title:("URI matching \"" ^ id ^ "\" unknown."))] + ~title:("URI matching \"" ^ id ^ "\" unknown.") ~id ())] | [uri] -> [uri] | _ -> C.interactive_user_uri_choice @@ -168,7 +168,7 @@ module Make(C:Callbacks) = CicRefine.Uncertain _ -> prerr_endline ("%%% UNCERTAIN!!! " ^ CicPp.ppterm expr) ; Uncertain - | _ -> + | CicRefine.RefineFailure _ -> prerr_endline ("%%% PRUNED!!! " ^ CicPp.ppterm expr) ; Ko in @@ -232,10 +232,10 @@ prerr_endline ("%%% PRUNED!!! " ^ CicPp.ppterm expr) ; exit 1 end ) resolve_ids ; - let resolve_id',term,metasenv' = + let res = match resolve_ids with [] -> raise ThereDoesNotExistAnyWellTypedInterpretationOfTheInput - | [resolve_id] -> resolve_id + | [_] -> resolve_ids | _ -> let choices = List.map @@ -266,10 +266,13 @@ prerr_endline ("%%% PRUNED!!! " ^ CicPp.ppterm expr) ; ) dom ) resolve_ids in - let index = C.interactive_interpretation_choice choices in - List.nth resolve_ids index + let indexes = C.interactive_interpretation_choice choices in + List.map (List.nth resolve_ids) indexes in - (known_ids @ dom', resolve_id'), metasenv',term + List.map + (fun (resolve_id',term,metasenv') -> + (known_ids @ dom', resolve_id'), metasenv',term + ) res end ;;