List.Assoc
Interpret a list of (key, value) pairs as a map in which only the first occurrence of a key affects the semantics, i.e.:
List.Assoc.xxx alist ...args...
is always the same as (or at least sort of isomorphic to):
Map.xxx (alist |> Map.of_alist_multi |> Map.map ~f:List.hd) ...args...
include Sexpable.S2 with type ('a, 'b) t := ( 'a, 'b ) t
val t_of_sexp :
( Sexplib0__.Sexp.t -> 'a ) ->
( Sexplib0__.Sexp.t -> 'b ) ->
Sexplib0__.Sexp.t ->
( 'a, 'b ) t
val sexp_of_t :
( 'a -> Sexplib0__.Sexp.t ) ->
( 'b -> Sexplib0__.Sexp.t ) ->
( 'a, 'b ) t ->
Sexplib0__.Sexp.t
val find : ( 'a, 'b ) t -> equal:( 'a -> 'a -> bool ) -> 'a -> 'b option
val find_exn : ( 'a, 'b ) t -> equal:( 'a -> 'a -> bool ) -> 'a -> 'b
val mem : ( 'a, 'b ) t -> equal:( 'a -> 'a -> bool ) -> 'a -> bool