ConversionSourcetype 'a extended_conversion_function =
?l2r:bool ->
?reds:TransparentState.t ->
Environ.env ->
?evars:CClosure.evar_handler ->
'a ->
'a ->
(unit, unit) resulttype ('a, 'err) universe_compare = {compare_sorts : Environ.env ->
conv_pb ->
Sorts.t ->
Sorts.t ->
'a ->
('a, 'err option) result;compare_instances : flex:bool ->
UVars.Instance.t ->
UVars.Instance.t ->
'a ->
('a, 'err option) result;compare_cumul_instances : conv_pb ->
UVars.Variance.t array ->
UVars.Instance.t ->
UVars.Instance.t ->
'a ->
('a, 'err option) result;}type ('a, 'err) generic_conversion_function =
('a, 'err) universe_state ->
Constr.constr ->
Constr.constr ->
('a, 'err option) resultval get_cumulativity_constraints :
conv_pb ->
UVars.Variance.t array ->
UVars.Instance.t ->
UVars.Instance.t ->
Sorts.QUConstraints.tval constructor_cumulativity_arguments :
(Declarations.mutual_inductive_body * int * int) ->
intval sort_cmp_universes :
Environ.env ->
conv_pb ->
Sorts.t ->
Sorts.t ->
('a * ('a, 'err) universe_compare) ->
('a, 'err option) result * ('a, 'err) universe_compareval convert_instances :
flex:bool ->
UVars.Instance.t ->
UVars.Instance.t ->
('a * ('a, 'err) universe_compare) ->
('a, 'err option) result * ('a, 'err) universe_compareThis function never returns an non-empty error.
These two functions can only fail with unit
val generic_conv :
conv_pb ->
l2r:bool ->
TransparentState.t ->
Environ.env ->
?evars:CClosure.evar_handler ->
('a, 'err) generic_conversion_functionThe failure values depend on the universe state functions (for better error messages).