Up
Parameter
M
:
Accessors_generic
with
type
('a, 'b, 'c)
options
:= ('a, 'b, 'c)
Options.t
with
type
('a, 'b, 'c)
t
:= ('a, 'b, 'c)
T.t
with
type
('a, 'b, 'c)
tree
:= ('a, 'b, 'c)
Tree.t
with
type
'a
key
:= 'a
Key.t
Signature
type
('a, 'b, 'cmp) t
type
('a, 'b, 'cmp) tree
type
'a key
type
('a, 'cmp, 'z) options
val
invariants : ('k, 'cmp, ('k, 'v, 'cmp)
t
-> bool)
options
val
is_empty : (_, _, _)
t
-> bool
val
length : (_, _, _)
t
-> int
val
add : ('k, 'cmp, ('k, 'v, 'cmp)
t
-> key:'k
key
-> data:'v -> ('k, 'v, 'cmp)
t
)
options
val
add_multi : ('k, 'cmp, ('k, 'v list, 'cmp)
t
-> key:'k
key
-> data:'v -> ('k, 'v list, 'cmp)
t
)
options
val
remove_multi : ('k, 'cmp, ('k, 'v list, 'cmp)
t
-> 'k
key
-> ('k, 'v list, 'cmp)
t
)
options
val
change : ('k, 'cmp, ('k, 'v, 'cmp)
t
-> 'k
key
-> f:('v option -> 'v option) -> ('k, 'v, 'cmp)
t
)
options
val
update : ('k, 'cmp, ('k, 'v, 'cmp)
t
-> 'k
key
-> f:('v option -> 'v) -> ('k, 'v, 'cmp)
t
)
options
val
find : ('k, 'cmp, ('k, 'v, 'cmp)
t
-> 'k
key
-> 'v option)
options
val
find_exn : ('k, 'cmp, ('k, 'v, 'cmp)
t
-> 'k
key
-> 'v)
options
val
remove : ('k, 'cmp, ('k, 'v, 'cmp)
t
-> 'k
key
-> ('k, 'v, 'cmp)
t
)
options
val
mem : ('k, 'cmp, ('k, _, 'cmp)
t
-> 'k
key
-> bool)
options
val
iter : ('k, 'v, _)
t
-> f:(key:'k
key
-> data:'v -> unit) -> unit
val
iteri : ('k, 'v, _)
t
-> f:(key:'k
key
-> data:'v -> unit) -> unit
val
iter_keys : ('k, _, _)
t
-> f:('k
key
-> unit) -> unit
val
iter2 : ('k, 'cmp, ('k, 'v1, 'cmp)
t
-> ('k, 'v2, 'cmp)
t
-> f:(key:'k
key
-> data:[
| `Left
of
'v1
| `Right
of
'v2
| `Both
of
'v1 * 'v2
] -> unit) -> unit)
options
val
map : ('k, 'v1, 'cmp)
t
-> f:('v1 -> 'v2) -> ('k, 'v2, 'cmp)
t
val
mapi : ('k, 'v1, 'cmp)
t
-> f:(key:'k
key
-> data:'v1 -> 'v2) -> ('k, 'v2, 'cmp)
t
val
fold : ('k, 'v, _)
t
-> init:'a -> f:(key:'k
key
-> data:'v -> 'a -> 'a) -> 'a
val
fold_right : ('k, 'v, _)
t
-> init:'a -> f:(key:'k
key
-> data:'v -> 'a -> 'a) -> 'a
val
fold2 : ('k, 'cmp, ('k, 'v1, 'cmp)
t
-> ('k, 'v2, 'cmp)
t
-> init:'a -> f:(key:'k
key
-> data:[
| `Left
of
'v1
| `Right
of
'v2
| `Both
of
'v1 * 'v2
] -> 'a -> 'a) -> 'a)
options
val
filter : ('k, 'cmp, ('k, 'v, 'cmp)
t
-> f:(key:'k
key
-> data:'v -> bool) -> ('k, 'v, 'cmp)
t
)
options
val
filteri : ('k, 'cmp, ('k, 'v, 'cmp)
t
-> f:(key:'k
key
-> data:'v -> bool) -> ('k, 'v, 'cmp)
t
)
options
val
filter_keys : ('k, 'cmp, ('k, 'v, 'cmp)
t
-> f:('k
key
-> bool) -> ('k, 'v, 'cmp)
t
)
options
val
filter_map : ('k, 'cmp, ('k, 'v1, 'cmp)
t
-> f:('v1 -> 'v2 option) -> ('k, 'v2, 'cmp)
t
)
options
val
filter_mapi : ('k, 'cmp, ('k, 'v1, 'cmp)
t
-> f:(key:'k
key
-> data:'v1 -> 'v2 option) -> ('k, 'v2, 'cmp)
t
)
options
val
partition_mapi : ('k, 'cmp, ('k, 'v1, 'cmp)
t
-> f:(key:'k
key
-> data:'v1 -> [
| `Fst
of
'v2
| `Snd
of
'v3
]) -> ('k, 'v2, 'cmp)
t
* ('k, 'v3, 'cmp)
t
)
options
val
partition_map : ('k, 'cmp, ('k, 'v1, 'cmp)
t
-> f:('v1 -> [
| `Fst
of
'v2
| `Snd
of
'v3
]) -> ('k, 'v2, 'cmp)
t
* ('k, 'v3, 'cmp)
t
)
options
val
partitioni_tf : ('k, 'cmp, ('k, 'v, 'cmp)
t
-> f:(key:'k
key
-> data:'v -> bool) -> ('k, 'v, 'cmp)
t
* ('k, 'v, 'cmp)
t
)
options
val
partition_tf : ('k, 'cmp, ('k, 'v, 'cmp)
t
-> f:('v -> bool) -> ('k, 'v, 'cmp)
t
* ('k, 'v, 'cmp)
t
)
options
val
compare_direct : ('k, 'cmp, ('v -> 'v -> int) -> ('k, 'v, 'cmp)
t
-> ('k, 'v, 'cmp)
t
-> int)
options
val
equal : ('k, 'cmp, ('v -> 'v -> bool) -> ('k, 'v, 'cmp)
t
-> ('k, 'v, 'cmp)
t
-> bool)
options
val
keys : ('k, _, _)
t
-> 'k
key
list
val
data : (_, 'v, _)
t
-> 'v list
val
to_alist : ?key_order:[
| `Increasing
| `Decreasing
] -> ('k, 'v, _)
t
-> ('k
key
* 'v) list
val
validate : name:('k
key
-> string) -> 'v
Validate.check
-> ('k, 'v, _)
t
Validate.check
val
merge : ('k, 'cmp, ('k, 'v1, 'cmp)
t
-> ('k, 'v2, 'cmp)
t
-> f:(key:'k
key
-> [
| `Left
of
'v1
| `Right
of
'v2
| `Both
of
'v1 * 'v2
] -> 'v3 option) -> ('k, 'v3, 'cmp)
t
)
options
val
symmetric_diff : ('k, 'cmp, ('k, 'v, 'cmp)
t
-> ('k, 'v, 'cmp)
t
-> data_equal:('v -> 'v -> bool) -> ('k
key
, 'v)
Symmetric_diff_element.t
Sequence.t
)
options
val
min_elt : ('k, 'v, _)
t
-> ('k
key
* 'v) option
val
min_elt_exn : ('k, 'v, _)
t
-> 'k
key
* 'v
val
max_elt : ('k, 'v, _)
t
-> ('k
key
* 'v) option
val
max_elt_exn : ('k, 'v, _)
t
-> 'k
key
* 'v
val
for_all : ('k, 'v, _)
t
-> f:('v -> bool) -> bool
val
for_alli : ('k, 'v, _)
t
-> f:(key:'k
key
-> data:'v -> bool) -> bool
val
exists : ('k, 'v, _)
t
-> f:('v -> bool) -> bool
val
existsi : ('k, 'v, _)
t
-> f:(key:'k
key
-> data:'v -> bool) -> bool
val
count : ('k, 'v, _)
t
-> f:('v -> bool) -> int
val
counti : ('k, 'v, _)
t
-> f:(key:'k
key
-> data:'v -> bool) -> int
val
split : ('k, 'cmp, ('k, 'v, 'cmp)
t
-> 'k
key
-> ('k, 'v, 'cmp)
t
* ('k
key
* 'v) option * ('k, 'v, 'cmp)
t
)
options
val
fold_range_inclusive : ('k, 'cmp, ('k, 'v, 'cmp)
t
-> min:'k
key
-> max:'k
key
-> init:'a -> f:(key:'k
key
-> data:'v -> 'a -> 'a) -> 'a)
options
val
range_to_alist : ('k, 'cmp, ('k, 'v, 'cmp)
t
-> min:'k
key
-> max:'k
key
-> ('k
key
* 'v) list)
options
val
closest_key : ('k, 'cmp, ('k, 'v, 'cmp)
t
-> [
| `Greater_or_equal_to
| `Greater_than
| `Less_or_equal_to
| `Less_than
] -> 'k
key
-> ('k
key
* 'v) option)
options
val
nth : ('k, 'cmp, ('k, 'v, 'cmp)
t
-> int -> ('k
key
* 'v) option)
options
val
rank : ('k, 'cmp, ('k, _, 'cmp)
t
-> 'k
key
-> int option)
options
val
to_tree : ('k, 'v, 'cmp)
t
-> ('k
key
, 'v, 'cmp)
tree
val
to_sequence : ('k, 'cmp, ?order:[
| `Increasing_key
| `Decreasing_key
] -> ?keys_greater_or_equal_to:'k
key
-> ?keys_less_or_equal_to:'k
key
-> ('k, 'v, 'cmp)
t
-> ('k
key
* 'v)
Sequence.t
)
options
val
obs : 'k
key
Quickcheck.Observer.t
-> 'v
Quickcheck.Observer.t
-> ('k, 'v, 'cmp)
t
Quickcheck.Observer.t
val
shrinker : ('k, 'cmp, 'k
key
Quickcheck.Shrinker.t
-> 'v
Quickcheck.Shrinker.t
-> ('k, 'v, 'cmp)
t
Quickcheck.Shrinker.t
)
options