package yocaml

  1. Overview
  2. Docs
type 'a t = 'a Freer.t
include Preface.Specs.Applicative.INFIX with type 'a t := 'a Freer.t
include Preface_specs.Apply.INFIX with type 'a t := 'a Freer.t
val (<*>) : ('a -> 'b) Freer.t -> 'a Freer.t -> 'b Freer.t

Applicative functor of ('a -> 'b) t over 'a t to 'b t.

val (<**>) : 'a Freer.t -> ('a -> 'b) Freer.t -> 'b Freer.t

Flipped Applicative functor of ('a -> 'b) t over 'a t to 'b t.

val (*>) : unit Freer.t -> 'a Freer.t -> 'a Freer.t

Discard the value of the first argument.

val (<*) : 'a Freer.t -> unit Freer.t -> 'a Freer.t

Discard the value of the second argument.

include Preface.Specs.Monad.INFIX with type 'a t := 'a Freer.t
val (=|<) : ('a -> 'b) -> 'a Freer.t -> 'b Freer.t

Infix version of CORE.map.

val (>|=) : 'a Freer.t -> ('a -> 'b) -> 'b Freer.t

Infix flipped version of CORE.map.

val (>>=) : 'a Freer.t -> ('a -> 'b Freer.t) -> 'b Freer.t

Infix flipped version of CORE.bind.

val (=<<) : ('a -> 'b Freer.t) -> 'a Freer.t -> 'b Freer.t

Infix version of CORE.bind.

val (>=>) : ('a -> 'b Freer.t) -> ('b -> 'c Freer.t) -> 'a -> 'c Freer.t

Infix version of CORE.compose_left_to_right.

val (<=<) : ('b -> 'c Freer.t) -> ('a -> 'b Freer.t) -> 'a -> 'c Freer.t

Infix version of OPERATION.compose_right_to_left.

val (>>) : unit Freer.t -> 'b Freer.t -> 'b Freer.t

Sequentially compose two actions, discarding any value produced by the first.

val (<<) : 'a Freer.t -> unit Freer.t -> 'a Freer.t

Sequentially compose two actions, discarding any value produced by the second.

val (<$>) : ('a -> 'b) -> 'a Freer.t -> 'b Freer.t
val (<&>) : 'a Freer.t -> ('a -> 'b) -> 'b Freer.t

Flipped and infix version of Preface_specs.Functor.CORE.map.

val (<$) : 'a -> 'b Freer.t -> 'a Freer.t
val ($>) : 'a Freer.t -> 'b -> 'b Freer.t

Flipped and infix version of Preface_specs.Functor.OPERATION.replace.

OCaml

Innovation. Community. Security.