Module Map.Symmetric_diff_element

type ('k, 'v) t = 'k * [ `Left of 'v | `Right of 'v | `Unequal of 'v * 'v ]
include Bin_prot.Binable.S2 with type ('k, 'v) t := ('k'v) t
val bin_size_t : ('a'b('a'b) t) Bin_prot.Size.sizer2
val bin_write_t : ('a'b('a'b) t) Bin_prot.Write.writer2
val bin_read_t : ('a'b('a'b) t) Bin_prot.Read.reader2
val __bin_read_t__ : ('a'bint -> ('a'b) t) Bin_prot.Read.reader2
val bin_writer_t : ('a'b('a'b) t) Bin_prot.Type_class.S2.writer
val bin_reader_t : ('a'b('a'b) t) Bin_prot.Type_class.S2.reader
val bin_t : ('a'b('a'b) t) Bin_prot.Type_class.S2.t
val compare : ('k -> 'k -> Base.Int.t) -> ('v -> 'v -> Base.Int.t) -> ('k'v) t -> ('k'v) t -> Base.Int.t
include Ppx_sexp_conv_lib.Sexpable.S2 with type ('k, 'v) t := ('k'v) 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 map_data : ('k'v1) t -> f:('v1 -> 'v2) -> ('k'v2) t

left is defined as:

function
| (`Left x | `Unequal (x, _)) -> Some x
| `Right _ -> None

and right is similar.

val left : (_'v) t -> 'v Base.Option.t
val right : (_'v) t -> 'v Base.Option.t