package coq
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=b1501d686c21836302191ae30f610cca57fb309214c126518ca009363ad2cd3c
doc/coq-core.pretyping/Glob_ops/index.html
Module Glob_ops
Source
val map_glob_sort_gen :
('a -> 'b) ->
'a Glob_term.glob_sort_gen ->
'b Glob_term.glob_sort_gen
Equalities
val glob_sort_gen_eq :
('a -> 'a -> bool) ->
'a Glob_term.glob_sort_gen ->
'a Glob_term.glob_sort_gen ->
bool
Expect a Prop/SProp/Set/Type universe; raise ComplexSort
if contains a max, an increment, or a flexible universe
val set_pat_alias :
Names.Id.t ->
'a Glob_term.cases_pattern_g ->
'a Glob_term.cases_pattern_g
val cast_type_eq :
('a -> 'a -> bool) ->
'a Glob_term.cast_type ->
'a Glob_term.cast_type ->
bool
Mapping cast_type
Operations on glob_constr
val mkGApp :
?loc:Loc.t ->
'a Glob_term.glob_constr_g ->
'a Glob_term.glob_constr_g list ->
'a Glob_term.glob_constr_g
Apply a list of arguments to a glob_constr
val map_glob_constr :
(Glob_term.glob_constr -> Glob_term.glob_constr) ->
Glob_term.glob_constr ->
Glob_term.glob_constr
Equality on binding_kind
val map_glob_constr_left_to_right :
(Glob_term.glob_constr -> Glob_term.glob_constr) ->
Glob_term.glob_constr ->
Glob_term.glob_constr
Ensure traversal from left to right
val mk_glob_constr_eq :
(Glob_term.glob_constr -> Glob_term.glob_constr -> bool) ->
Glob_term.glob_constr ->
Glob_term.glob_constr ->
bool
val fold_glob_constr :
('a -> Glob_term.glob_constr -> 'a) ->
'a ->
Glob_term.glob_constr ->
'a
val fold_glob_constr_with_binders :
(Names.Id.t -> 'a -> 'a) ->
('a -> 'b -> Glob_term.glob_constr -> 'b) ->
'a ->
'b ->
Glob_term.glob_constr ->
'b
val rename_glob_vars :
(Names.Id.t * Names.Id.t) list ->
'a Glob_term.glob_constr_g ->
'a Glob_term.glob_constr_g
val map_pattern_binders :
(Names.Name.t -> Names.Name.t) ->
Glob_term.tomatch_tuples ->
Glob_term.cases_clauses ->
Glob_term.tomatch_tuples * Glob_term.cases_clauses
map_pattern_binders f m c
applies f
to all the binding names in a pattern-matching expression (Glob_term.glob_constr_r.GCases
) represented here by its relevant components m
and c
. It is used to interpret Ltac-bound names both in pretyping and printing of terms.
val map_pattern :
(Glob_term.glob_constr -> Glob_term.glob_constr) ->
Glob_term.tomatch_tuples ->
Glob_term.cases_clauses ->
Glob_term.tomatch_tuples * Glob_term.cases_clauses
map_pattern f m c
applies f
to the return predicate and the right-hand side of a pattern-matching expression (Glob_term.glob_constr_r.GCases
) represented here by its relevant components m
and c
.
val cases_pattern_of_glob_constr :
Environ.env ->
Names.Name.t ->
'a Glob_term.glob_constr_g ->
'a Glob_term.cases_pattern_g
Conversion from glob_constr to cases pattern, if possible
Evaluation is forced. Take the current alias as parameter,
val glob_constr_of_closed_cases_pattern :
Environ.env ->
'a Glob_term.cases_pattern_g ->
Names.Name.t * 'a Glob_term.glob_constr_g
val glob_constr_of_cases_pattern :
Environ.env ->
'a Glob_term.cases_pattern_g ->
'a Glob_term.glob_constr_g
A canonical encoding of cases pattern into constr such that composed with cases_pattern_of_glob_constr Anonymous
gives identity
val add_patterns_for_params_remove_local_defs :
Environ.env ->
Names.constructor ->
'a Glob_term.cases_pattern_g list ->
'a Glob_term.cases_pattern_g list