let mk_choice ~mk_appl ~mk_implicit ~term_of_uri (dsc, args, appl_pattern)=
dsc,
- (fun env _ cic_args ->
+ `Sym_interp
+ (fun cic_args ->
let env',rest =
let names =
List.map (function CicNotationPt.IdentArg (_, name) -> name) args
| _::_ -> mk_appl (combined::rest))
let lookup_symbol_by_dsc ~mk_appl ~mk_implicit ~term_of_uri symbol dsc =
+ let interpretations = TermAcicContent.lookup_interpretations ~sorted:false symbol in
try
- mk_choice~mk_appl ~mk_implicit ~term_of_uri
- (List.find
- (fun (dsc', _, _) -> dsc = dsc')
- (TermAcicContent.lookup_interpretations symbol))
+ mk_choice ~mk_appl ~mk_implicit ~term_of_uri
+ (List.find (fun (dsc', _, _) -> dsc = dsc') interpretations)
with TermAcicContent.Interpretation_not_found | Not_found ->
raise (Choice_not_found (lazy (sprintf "Symbol %s, dsc %s" symbol dsc)))