CoercionopsSourcetype cl_typ = | CL_SORT| CL_FUN| CL_SECVAR of Names.variable| CL_CONST of Names.Constant.t| CL_IND of Names.inductive| CL_PROJ of Names.Projection.Repr.tThis is the type of class kinds
This is the type of coercion kinds
type coe_info_typ = {coe_value : Names.GlobRef.t;coe_local : bool;coe_is_identity : bool;coe_is_projection : Names.Projection.Repr.t option;coe_source : cl_typ;coe_target : cl_typ;coe_param : int;}This is the type of infos for declared coercions
This is the type of paths from a class to another
val find_class_type :
Environ.env ->
Evd.evar_map ->
EConstr.types ->
cl_typ * EConstr.EInstance.t * EConstr.constr listfind_class_type env sigma c returns the head reference of c, its universe instance and its arguments
raises Not_found if not convertible to a class
val lookup_path_between :
Environ.env ->
Evd.evar_map ->
(EConstr.types * EConstr.types) ->
EConstr.types * EConstr.types * inheritance_pathval lookup_path_to_fun_from :
Environ.env ->
Evd.evar_map ->
EConstr.types ->
EConstr.types * inheritance_pathval lookup_path_to_sort_from :
Environ.env ->
Evd.evar_map ->
EConstr.types ->
EConstr.types * inheritance_pathval lookup_pattern_path_between :
Environ.env ->
(Names.inductive * Names.inductive) ->
(Names.constructor * int) list