package coq-core
Install
dune-project
Dependency
Authors
Maintainers
Sources
md5=66e57ea55275903bef74d5bf36fbe0f1
sha512=1a7eac6e2f58724a3f9d68bbb321e4cfe963ba1a5551b9b011db4b3f559c79be433d810ff262593d753770ee41ea68fbd6a60daa1e2319ea00dff64c8851d70b
doc/coq-core.lib/Util/Map/Make/index.html
Module Map.MakeSource
Parameters
module M : Map.OrderedTypeSignature
include CSig.MapS with type key = M.t with type 'a t = 'a Map.Make(M).t
include CSig.UMapS with type key = M.t with type 'a t = 'a Map.Make(M).t
include UExtS
with type key := key
and type 'a t := 'a t
and module Set := Set.Make(M)
The underlying Map library
include CSig.UMapS with type key := key with type 'a t := 'a t
Same as add, but expects the key to be present, and thus faster.
Apply the given function to the binding of the given key.
Recover the set of keys defined in the map.
bind f s transform the set x1; ...; xn into x1 := f x1; ...; xn := f xn.
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.
Like map but keeping only bindings mapped to Some
val symmetric_diff_fold :
(key -> 'a option -> 'a option -> 'b -> 'b) ->
'a t ->
'a t ->
'b ->
'bsymmetric_diff f ml mr acc will efficiently fold over the difference between ml and mr, assumed that they share most of their internal structure. A call to f k vl vr means that if vl is Some, then k exists in ml. Similarly, if vr is Some, then k exists in mr. If both vl and vr are Some, then vl != vr.
Alias for fold, to easily track where we depend on fold order.