Module Core.EitherSource
This module extends Base.Either.
include Bin_prot.Binable.S_local2
with type ('f, 's) t := ('f, 's) Core.Either.t
include Typerep_lib.Typerepable.S2
with type ('f, 's) t := ('f, 's) Core.Either.t
Source
val typerep_of_t :
'a Typerep_lib.Std_internal.Typerep.t ->
'b Typerep_lib.Std_internal.Typerep.t ->
('a, 'b) Core.Either.t Typerep_lib.Std_internal.Typerep.tSource
val typename_of_t :
'a Typerep_lib.Typename.t ->
'b Typerep_lib.Typename.t ->
('a, 'b) Core.Either.t Typerep_lib.Typename.tSource
val compare :
('a -> 'a -> int) ->
('b -> 'b -> int) ->
('a, 'b) Core.Either.t ->
('a, 'b) Core.Either.t ->
intSource
val hash_fold_t :
(Base.Hash.state -> 'a -> Base.Hash.state) ->
(Base.Hash.state -> 'b -> Base.Hash.state) ->
Base.Hash.state ->
('a, 'b) Core.Either.t ->
Base.Hash.stateinclude Sexplib0.Sexpable.S2 with type ('f, 's) t := ('f, 's) Core.Either.t
Source
val t_of_sexp :
(Sexplib0.Sexp.t -> 'a) ->
(Sexplib0.Sexp.t -> 'b) ->
Sexplib0.Sexp.t ->
('a, 'b) Core.Either.tSource
val sexp_of_t :
('a -> Sexplib0.Sexp.t) ->
('b -> Sexplib0.Sexp.t) ->
('a, 'b) Core.Either.t ->
Sexplib0.Sexp.tSource
val t_sexp_grammar :
'f Sexplib0.Sexp_grammar.t ->
's Sexplib0.Sexp_grammar.t ->
('f, 's) Core.Either.t Sexplib0.Sexp_grammar.tinclude Base.Invariant.S2 with type ('a, 'b) t := ('a, 'b) Core.Either.t
Source
val map :
('a, 'b) Core.Either.t ->
first:('a -> 'c) ->
second:('b -> 'd) ->
('c, 'd) Core.Either.tSource
val equal :
('f -> 'f -> bool) ->
('s -> 's -> bool) ->
('f, 's) Core.Either.t ->
('f, 's) Core.Either.t ->
boolSource
val local_equal :
('f -> 'f -> bool) ->
('s -> 's -> bool) ->
('f, 's) Core.Either.t ->
('f, 's) Core.Either.t ->
boolfirst and second are First.return and Second.return.
include Core.Comparator.Derived2 with type ('a, 'b) t := ('a, 'b) Core.Either.t
Source
val comparator :
('a, 'cmp_a) Base.Comparator.comparator ->
('b, 'cmp_b) Base.Comparator.comparator ->
(('a, 'b) Core.Either.t, ('cmp_a, 'cmp_b) Core.Either.comparator_witness)
Base.Comparator.comparatorinclude Core.Quickcheckable.S2 with type ('a, 'b) t := ('a, 'b) Core.Either.t
Source
val quickcheck_generator :
'a Base_quickcheck.Generator.t ->
'b Base_quickcheck.Generator.t ->
('a, 'b) Core.Either.t Base_quickcheck.Generator.tSource
val quickcheck_observer :
'a Base_quickcheck.Observer.t ->
'b Base_quickcheck.Observer.t ->
('a, 'b) Core.Either.t Base_quickcheck.Observer.tSource
val quickcheck_shrinker :
'a Base_quickcheck.Shrinker.t ->
'b Base_quickcheck.Shrinker.t ->
('a, 'b) Core.Either.t Base_quickcheck.Shrinker.t