/
listAssoc.mli
35 lines (18 loc) · 1.07 KB
/
listAssoc.mli
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
(* Ohm is © 2011 Victor Nicollet *)
type ('key,'value) t = ('key * 'value) list
val get : ('key, 'value) t -> 'key -> 'value
val try_get : ('key, 'value) t -> 'key -> 'value option
val set : 'key -> 'value -> ('key,'value) t -> ('key,'value) t
val replace : 'key -> 'value -> ('key,'value) t -> ('key,'value) t
val unset : 'key -> ('key,'value) t -> ('key,'value) t
val pop : 'key -> ('key,'value) t -> ('key,'value) t * 'value
val try_pop : 'key -> ('key,'value) t -> ('key,'value) t * 'value option
val move : ?after:'key -> 'key -> ('key,'value) t -> ('key,'value) t
val keys : ('key,'value) t -> 'key list
val values : ('key,'value) t -> 'value list
val map : 'key -> ('value -> 'value) -> ('key, 'value) t -> ('key, 'value) t
val group : ('key * 'value) list -> ('key, 'value list) t
val group_stable : ('key * 'value) list -> ('key, 'value list) t
val group_seq : ('key * 'value) list -> ('key, 'value list) t
val of_json : (string -> 'key) -> (Json.t -> 'value) -> Json.t -> ('key,'value) t
val to_json : ('key -> string) -> ('value -> Json.t) -> ('key,'value) t -> Json.t