in
let metasenv, subst, term, _ =
NCicRefiner.typeof
- { rdb with NRstatus.coerc_db =
- if use_coercions then rdb.NRstatus.coerc_db
- else NCicCoercion.empty_db }
+ (rdb#set_coerc_db
+ (if use_coercions then rdb#coerc_db else NCicCoercion.empty_db))
metasenv subst context term expty ~localise
in
Disambiguate.Ok (term, metasenv, subst, ())
try
let obj =
NCicRefiner.typeof_obj
- { rdb with NRstatus.coerc_db =
- if use_coercions then rdb.NRstatus.coerc_db
- else NCicCoercion.empty_db }
+ (rdb#set_coerc_db
+ (if use_coercions then rdb#coerc_db
+ else NCicCoercion.empty_db))
obj ~localise
in
Disambiguate.Ok (obj, [], [], ())
with NRef.IllFormedReference _ ->
CicNotationPt.fail loc "Ill formed reference")
| CicNotationPt.NRef nref -> NCic.Const nref
- | CicNotationPt.Implicit -> NCic.Implicit `Term
+ | CicNotationPt.Implicit `Vector -> NCic.Implicit `Vector
+ | CicNotationPt.Implicit `JustOne -> NCic.Implicit `Term
| CicNotationPt.UserInput -> NCic.Implicit `Hole
| CicNotationPt.Num (num, i) ->
Disambiguate.resolve ~env ~mk_choice (Num i) (`Num_arg num)
res
| Some (CicNotationPt.AttributedTerm (_, term)) ->
aux_option ~localize loc context annotation (Some term)
- | Some CicNotationPt.Implicit -> NCic.Implicit annotation
+ | Some CicNotationPt.Implicit `JustOne -> NCic.Implicit annotation
+ | Some CicNotationPt.Implicit `Vector -> NCic.Implicit `Vector
| Some term -> aux ~localize loc context term
in
(fun ~context -> aux ~localize:true HExtlib.dummy_floc context),
(fun (context,res) (name,t) ->
let t =
match t with
- None -> CicNotationPt.Implicit
+ None -> CicNotationPt.Implicit `JustOne
| Some t -> t in
let name = cic_name_of_name name in
let t =
(fun (context,res) (name,t) ->
let t =
match t with
- None -> CicNotationPt.Implicit
+ None -> CicNotationPt.Implicit `JustOne
| Some t -> t in
let name = cic_name_of_name name in
let t =