X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fcomponents%2Fng_disambiguation%2FnCicDisambiguate.ml;h=f221a2b05a57a31596ab767c2a8438f1d40a919c;hb=f81e6df71f8804c2f491034b951dcd34e0bd24c3;hp=1e88c3714129f0b06d22c4bf80597ded7ff4bb87;hpb=63b86fce8a75490b957e7301517b9006f58321b6;p=helm.git diff --git a/helm/software/components/ng_disambiguation/nCicDisambiguate.ml b/helm/software/components/ng_disambiguation/nCicDisambiguate.ml index 1e88c3714..f221a2b05 100644 --- a/helm/software/components/ng_disambiguation/nCicDisambiguate.ml +++ b/helm/software/components/ng_disambiguation/nCicDisambiguate.ml @@ -22,6 +22,9 @@ module NRef = NReference let debug_print s = prerr_endline (Lazy.force s);; let debug_print _ = ();; +let reference_of_oxuri = ref (fun _ -> assert false);; +let set_reference_of_oxuri f = reference_of_oxuri := f;; + let cic_name_of_name = function | Ast.Ident (n, None) -> n | _ -> assert false @@ -325,10 +328,14 @@ let interpretate_term_and_interpretate_term_option | CicNotationPt.Uri (uri, subst) -> assert (subst = None); (try - NCic.Const (OCic2NCic.reference_of_oxuri(UriManager.uri_of_string uri)) + NCic.Const (!reference_of_oxuri(UriManager.uri_of_string uri)) with NRef.IllFormedReference _ -> CicNotationPt.fail loc "Ill formed reference") | CicNotationPt.NRef nref -> NCic.Const nref + | CicNotationPt.NCic t -> + let context = (* to make metas_of_term happy *) + List.map (fun x -> x,NCic.Decl (NCic.Implicit `Type)) context in + assert(NCicUntrusted.metas_of_term [] context t = []); t | CicNotationPt.Implicit `Vector -> NCic.Implicit `Vector | CicNotationPt.Implicit `JustOne -> NCic.Implicit `Term | CicNotationPt.Implicit (`Tagged s) -> NCic.Implicit (`Tagged s)