package coq
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=73466e61f229b23b4daffdd964be72bd7a110963b9d84bd4a86bb05c5dc19ef3
doc/coq-core.kernel/Univ/LMap/index.html
Module Univ.LMap
Source
include CMap.ExtS
with type key = Level.t
and type 'a t = 'a Level.Map.t
and module Set := Level.Set
The underlying Map library
include CSig.MapS with type key = Level.t with type 'a t = 'a Level.Map.t
type key = Level.t
type 'a t = 'a Level.Map.t
val empty : 'a t
val is_empty : 'a t -> bool
val cardinal : 'a t -> int
Apply the given function to the binding of the given key.
val domain : 'a t -> Level.Set.t
Recover the set of keys defined in the map.
val bind : (key -> 'a) -> Level.Set.t -> 'a t
bind f s
transform the set x1; ...; xn
into x1 := f x1; ...; xn := f xn
.
Alias for fold
, to easily track where we depend on fold order.
val height : 'a t -> int
An indication of the logarithmic size of a map
find_range in_range m
Given a comparison function in_range x
, that tests if x
is below, above, or inside a given range filter_range
returns the submap of m
whose keys are in range. Note that in_range
has to define a continouous range.
update x f m
returns a map containing the same bindings as m
, except for the binding of x
. Depending on the value of y
where y
is f (find_opt x m)
, the binding of x
is added, removed or updated. If y
is None
, the binding is removed if it exists; otherwise, if y
is Some z
then x
is associated to z
in the resulting map. If x
was already bound in m
to a value that is physically equal to z
, m
is returned unchanged (the result of the function is then physically equal to m
).
module Smart : sig ... end
module Unsafe : sig ... end
module Monad (M : CMap.MonadS) : sig ... end
Fold operators parameterized by any monad.