Up
Module
Make
(
Data
: sig .. end) :
S
with
type
'a
data
= 'a
Data.t
Parameters
Data
: sig .. end
Signature
type
t
val
sexp_of_t :
t
->
Sexplib.Sexp.t
type
'a data = 'a
Data.t
include
Core_kernel.Invariant.S
with
type
t
:=
t
type
t
val
invariant :
t
Invariant_intf.inv
val
empty :
t
val
is_empty :
t
-> bool
val
set :
t
-> 'a
Key.t
-> 'a
data
->
t
val
mem :
t
-> 'a
Key.t
-> bool
val
mem_by_id :
t
->
Key.Uid.t
-> bool
val
find :
t
-> 'a
Key.t
-> 'a
data
option
val
find_exn :
t
-> 'a
Key.t
-> 'a
data
val
add :
t
-> 'a
Key.t
-> 'a
data
-> [
| `Ok
of
t
| `Duplicate
]
val
add_exn :
t
-> 'a
Key.t
-> 'a
data
->
t
val
change :
t
-> 'a
Key.t
-> f:('a
data
option -> 'a
data
option) ->
t
val
change_exn :
t
-> 'a
Key.t
-> f:('a
data
-> 'a
data
) ->
t
val
update :
t
-> 'a
Key.t
-> f:('a
data
option -> 'a
data
) ->
t
val
remove :
t
-> 'a
Key.t
->
t
val
remove_by_id :
t
->
Key.Uid.t
->
t
module
Packed
: sig .. end
val
to_alist :
t
->
Packed.t
list