PatriciaTree.HeterogeneousSet_S
A set containing different keys, very similar to Set_S
, but with simple type elt
being replaced by type constructor 'a elt
.
The main changes from Set_S
are:
elt
is replaced by a type constructor 'k elt
. Because of that, most higher-order arguments require higher-ranking polymorphism, and we provide records that allows to pass them as arguments (e.g. polyfold
, polypretty
, etc.)Any
constructor.module BaseMap :
HeterogeneousMap_S with type 'a key = 'a elt and type (_, _) value = unit
Underlying basemap, for cross map/set operations
type t = unit BaseMap.t
type 'a key = 'a elt
Alias for elements, for compatibility with other PatriciaTrees
val empty : t
val is_empty : t -> bool
val cardinal : t -> int
val filter : polypredicate -> t -> t
val for_all : polypredicate -> t -> bool
val pretty :
?pp_sep:(Stdlib.Format.formatter -> unit -> unit) ->
polypretty ->
Stdlib.Format.formatter ->
t ->
unit
pp_sep
defaults to Format.pp_print_cut
Conversion functions