package n_ary
-
n_ary.test
Legend:
Library
Module
Module type
Parameter
Class
Class type
Library
Module
Module type
Parameter
Class
Class type
Defines a variant type with 3 unary constructors. We refer to each constructor as a "case". Cases are numbered consecutively starting at zero.
include Ppx_compare_lib.Comparable.S3
with type ('a0, 'a1, 'a2) t := ('a0, 'a1, 'a2) t
val compare :
'a Base__Ppx_compare_lib.compare ->
'b Base__Ppx_compare_lib.compare ->
'c Base__Ppx_compare_lib.compare ->
('a, 'b, 'c) t Base__Ppx_compare_lib.compare
include Ppx_compare_lib.Equal.S3
with type ('a0, 'a1, 'a2) t := ('a0, 'a1, 'a2) t
val equal :
'a Base__Ppx_compare_lib.equal ->
'b Base__Ppx_compare_lib.equal ->
'c Base__Ppx_compare_lib.equal ->
('a, 'b, 'c) t Base__Ppx_compare_lib.equal
include Ppx_hash_lib.Hashable.S3
with type ('a0, 'a1, 'a2) t := ('a0, 'a1, 'a2) t
val hash_fold_t :
'a Base__Ppx_hash_lib.hash_fold ->
'b Base__Ppx_hash_lib.hash_fold ->
'c Base__Ppx_hash_lib.hash_fold ->
('a, 'b, 'c) t Base__Ppx_hash_lib.hash_fold
val sexp_of_t :
('a0 -> Sexplib0.Sexp.t) ->
('a1 -> Sexplib0.Sexp.t) ->
('a2 -> Sexplib0.Sexp.t) ->
('a0, 'a1, 'a2) t ->
Sexplib0.Sexp.t
Constructors
val case0 : 'a -> ('a, _, _) t
val case1 : 'a -> (_, 'a, _) t
val case2 : 'a -> (_, _, 'a) t
Predicates
val is_case0 : (_, _, _) t -> Base.bool
val is_case1 : (_, _, _) t -> Base.bool
val is_case2 : (_, _, _) t -> Base.bool
Accessors
val get_case0 : ('a, _, _) t -> 'a Base.option
val get_case1 : (_, 'a, _) t -> 'a Base.option
val get_case2 : (_, _, 'a) t -> 'a Base.option
Accessors that raise
val get_case0_exn : ('a, _, _) t -> 'a
val get_case1_exn : (_, 'a, _) t -> 'a
val get_case2_exn : (_, _, 'a) t -> 'a
val map :
('a0, 'a1, 'a2) t ->
f0:('a0 -> 'b0) ->
f1:('a1 -> 'b1) ->
f2:('a2 -> 'b2) ->
('b0, 'b1, 'b2) t
Map all cases
Map individual cases