X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;ds=sidebyside;f=matita%2Fcomponents%2Fng_disambiguation%2FdisambiguateChoices.ml;h=7e3e44f525ccfa8741e457e2301f8896447ffbc1;hb=50a9ed8c6207145fccf59e6a5dbbff935cd2c6d7;hp=94643b3b003a98729ac02613d5d803a6478377e5;hpb=f6b7c6ae353e014761a3d24dbc87e00d828d7f2d;p=helm.git diff --git a/matita/components/ng_disambiguation/disambiguateChoices.ml b/matita/components/ng_disambiguation/disambiguateChoices.ml index 94643b3b0..7e3e44f52 100644 --- a/matita/components/ng_disambiguation/disambiguateChoices.ml +++ b/matita/components/ng_disambiguation/disambiguateChoices.ml @@ -31,16 +31,13 @@ open DisambiguateTypes exception Choice_not_found of string Lazy.t -let nnum_choices = ref [] - -let nadd_num_choice choice = nnum_choices := choice :: !nnum_choices - let has_description dsc = (fun x -> fst x = dsc) let nlookup_num_by_dsc dsc = - try - List.find (has_description dsc) !nnum_choices - with Not_found -> raise (Choice_not_found (lazy ("Num with dsc " ^ dsc))) + if dsc <> "natural number" then + raise (Choice_not_found (lazy ("Num with dsc " ^ dsc))) + else + "natural number", `Num_interp Nnumber_notation.ninterp_natural_number let mk_choice ~mk_appl ~mk_implicit ~term_of_nref (dsc, args, appl_pattern)= dsc, @@ -72,8 +69,9 @@ let mk_choice ~mk_appl ~mk_implicit ~term_of_nref (dsc, args, appl_pattern)= [] -> combined | _::_ -> mk_appl (combined::rest)) -let lookup_symbol_by_dsc ~mk_appl ~mk_implicit ~term_of_nref symbol dsc = - let interpretations = Interpretations.lookup_interpretations ~sorted:false symbol in +let lookup_symbol_by_dsc status ~mk_appl ~mk_implicit ~term_of_nref symbol dsc = + let interpretations = + Interpretations.lookup_interpretations status ~sorted:false symbol in try mk_choice ~mk_appl ~mk_implicit ~term_of_nref (List.find (fun (dsc', _, _) -> dsc = dsc') interpretations)