Module type Core_extended.Fold_map.S2_sexpable

include S2
type 'a out_value
type ('key, 'data) t = private ('key'data out_valueCore.Map.Poly.t
type 'a _in_value = 'a
type 'a _out_value = 'a out_value
type ('a, 'b) _t = ('a'bt
val empty : (__t
val singleton : 'a ‑> 'b ‑> ('a'bt
val is_empty : (__t ‑> bool
val length : (__t ‑> int
val add : key:'a ‑> data:'b ‑> ('a'bt ‑> ('a'bt
val find : ('a'bt ‑> 'a ‑> 'b out_value
val remove : ('a'bt ‑> 'a ‑> ('a'bt
val set : key:'a ‑> data:'b out_value ‑> ('a'bt ‑> ('a'bt
val mem : ('a_t ‑> 'a ‑> bool
val iter_keys : ('a_t ‑> f:('a ‑> unit) ‑> unit
val iter : (_'bt ‑> f:('b out_value ‑> unit) ‑> unit
val iteri : ('a'bt ‑> f:(key:'a ‑> data:'b out_value ‑> unit) ‑> unit
val fold : ('a'bt ‑> init:'c ‑> f:(key:'a ‑> data:'b out_value ‑> 'c ‑> 'c) ‑> 'c
val filter_keys : ('a'bt ‑> f:('a ‑> bool) ‑> ('a'bt
val filter : ('a'bt ‑> f:('b out_value ‑> bool) ‑> ('a'bt
val filteri : ('a'bt ‑> f:(key:'a ‑> data:'b out_value ‑> bool) ‑> ('a'bt
val keys : ('a_t ‑> 'a list
val data : (_'bt ‑> 'b out_value list
val to_alist : ?key_order:[ `Increasing | `Decreasing ] ‑> ('a'bt ‑> ('a * 'b out_value) list
val of_list : ('a * 'b) list ‑> ('a'bt
val for_all : (_'bt ‑> f:('b out_value ‑> bool) ‑> bool
val exists : (_'bt ‑> f:('b out_value ‑> bool) ‑> bool
val to_map : ('a'bt ‑> ('a'b out_valueCore.Map.Poly.t
val of_map : ('a'b out_valueCore.Map.Poly.t ‑> ('a'bt
include Core.Sexpable.S2 with type (a, b) t := (a, b) t
type ('a, 'b) t
val t_of_sexp : (Base__.Sexplib.Sexp.t ‑> 'a) ‑> (Base__.Sexplib.Sexp.t ‑> 'b) ‑> Base__.Sexplib.Sexp.t ‑> ('a'bt
val sexp_of_t : ('a ‑> Base__.Sexplib.Sexp.t) ‑> ('b ‑> Base__.Sexplib.Sexp.t) ‑> ('a'bt ‑> Base__.Sexplib.Sexp.t