Module ComCoercion
- val try_add_new_coercion_with_target : Names.GlobRef.t -> local:bool -> poly:bool -> source:Coercionops.cl_typ -> target:Coercionops.cl_typ -> unit
- try_add_new_coercion_with_target ref s src tgdeclares- refas a coercion from- srcto- tg
- val try_add_new_coercion : Names.GlobRef.t -> local:bool -> poly:bool -> unit
- try_add_new_coercion ref sdeclares- ref, assumed to be of type- (x1:T1)...(xn:Tn)src->tg, as a coercion from- srcto- tg
- val try_add_new_coercion_subclass : Coercionops.cl_typ -> local:bool -> poly:bool -> unit
- try_add_new_coercion_subclass cst sexpects that- cstdenotes a transparent constant which unfolds to some class- tg; it declares an identity coercion from- cstto- tg, named something like- "Id_cst_tg"
- val try_add_new_coercion_with_source : Names.GlobRef.t -> local:bool -> poly:bool -> source:Coercionops.cl_typ -> unit
- try_add_new_coercion_with_source ref s srcdeclares- refas a coercion from- srcto- tgwhere the target is inferred from the type of- ref
- val try_add_new_identity_coercion : Names.Id.t -> local:bool -> poly:bool -> source:Coercionops.cl_typ -> target:Coercionops.cl_typ -> unit
- try_add_new_identity_coercion id s src tgenriches the environment with a new definition of name- iddeclared as an identity coercion from- srcto- tg
- val add_coercion_hook : poly:bool -> Declare.Hook.t
- val add_subclass_hook : poly:bool -> Declare.Hook.t
- val class_of_global : Names.GlobRef.t -> Coercionops.cl_typ