Module Accessor__.Many
type ('a, +'x, 'y) tAn
(a, x, y) tis an applicative for definingmanyaccessors. See the documentation ofAccessor.manyfor more information.A value of type
(a, x, y) tcan make the following claim: I can give you some number ofxes and if you tell me how to replace each of them with ay, I will also give you ana.
module Accessed : Base.Monad.S_indexed with type ('x, 'a, 'y) t := ('a, 'x, 'y) tval access : 'a -> ('b, 'a, 'b) taccess a"accesses"aand returns the value you are expected replace it with.
val of_nonempty : ('a, 'x, 'y) Accessor.Nonempty.t -> ('a, 'x, 'y) t
module Of_applicative : functor (A : sig ... end) -> sig ... endmodule Of_applicative2 : functor (A : sig ... end) -> sig ... endmodule Of_applicative3 : functor (A : sig ... end) -> sig ... endmodule Open_on_rhs_intf : sig ... endinclude Base.Applicative.S3 with type ('a, 'b, 'c) t := ('a, 'b, 'c) t
include Base__.Applicative_intf.For_let_syntax3
val return : 'a -> ('a, _, _) tval map : ('a, 'd, 'e) t -> f:('a -> 'b) -> ('b, 'd, 'e) tval both : ('a, 'd, 'e) t -> ('b, 'd, 'e) t -> ('a * 'b, 'd, 'e) t
include Base__.Applicative_intf.Applicative_infix3 with type ('a, 'd, 'e) t := ('a, 'd, 'e) t
val apply : ('a -> 'b, 'd, 'e) t -> ('a, 'd, 'e) t -> ('b, 'd, 'e) tval map2 : ('a, 'd, 'e) t -> ('b, 'd, 'e) t -> f:('a -> 'b -> 'c) -> ('c, 'd, 'e) tval map3 : ('a, 'd, 'e) t -> ('b, 'd, 'e) t -> ('c, 'd, 'e) t -> f:('a -> 'b -> 'c -> 'result) -> ('result, 'd, 'e) tval all : ('a, 'd, 'e) t list -> ('a list, 'd, 'e) tval all_unit : (unit, 'd, 'e) t list -> (unit, 'd, 'e) t
module Applicative_infix : Base__.Applicative_intf.Applicative_infix3 with type ('a, 'd, 'e) t := ('a, 'd, 'e) tinclude Base.Applicative.Let_syntax3 with type ('a, 'b, 'c) t := ('a, 'b, 'c) t with module Open_on_rhs_intf := Open_on_rhs_intf
module Open_on_rhs_intf : sig ... endmodule Let_syntax : sig ... end