accessor_base

Accessors for Base types, for use with the Accessor library
IN THIS PACKAGE
Module Accessor_base . Set
val mem : 'key -> ( _, Base.bool, ( 'key, _ ) Base.Set.t, [< Accessor_base__Import.field ] ) Accessor.t

Access whether a key is present in the set. true means the key is present, and false means it is absent.

val at : 'key -> ( _, Base.bool, ( 'key, _ ) Base.Set.t, [< Accessor_base__Import.field ] ) Accessor.t
val memi : 'key -> ( 'key * _, Base.bool, ( 'key, _ ) Base.Set.t, [< Accessor_base__Import.field ] ) Accessor.Indexed.t

The indexed version of mem adds the given key to the index.

val ati : 'key -> ( 'key * _, Base.bool, ( 'key, _ ) Base.Set.t, [< Accessor_base__Import.field ] ) Accessor.Indexed.t
val found : 'key -> ( _, Base.unit, ( 'key, _ ) Base.Set.t, [< Accessor_base__Import.optional ] ) Accessor.t

Access () iff the set contains the given key.

val foundi : 'key -> ( 'key * _, Base.unit, ( 'key, _ ) Base.Set.t, [< Accessor_base__Import.optional ] ) Accessor.Indexed.t

The indexed version of found adds the given key to the index.

val each : ( 'i -> 'key -> _, 'i -> ( 'key, 'cmp ) Base.Set.t -> _, [< Accessor_base__Import.many_getter ] ) Accessor.General.t

Access every element in a set.

val empty_default : ( 'k1, 'cmp1 ) Base.Comparator.Module.t -> ( 'i -> ( 'k1, 'cmp1 ) Base.Set.t -> ( 'k2, 'cmp2 ) Base.Set.t, 'i -> ( 'k1, 'cmp1 ) Base.Set.t Base.option -> ( 'k2, 'cmp2 ) Base.Set.t Base.option, [< Accessor_base__Import.isomorphism ] ) Accessor.General.t

Treat None equivalently with the empty set. This accessor is not well-behaved, as it violates construct (get at) = at:

construct (get (Some Foo.Set.empty)) = construct Foo.Set.empty = None

val of_accessor : ( 'a, 'cmp ) Base.Comparator.Module.t -> ( Base.unit -> 'a -> _, Base.unit -> 'at -> _, [> Accessor_base__Import.many_getter ] ) Accessor.General.t -> 'at -> ( 'a, 'cmp ) Base.Set.t

of_accessor (module M) accessor x is a M.Set.t that contains everything accessed by accessor in x.