Sequence f
, then fa
, combining their results by function
application.
Sequence f
, then fa
, combining their results by function
application.
NB: with respect to apply2
and all other combinators, as well
as scalaz.Bind, the f
action appears to the *left*. So
f
should be the "first" F
-action to perform. This is in
accordance with all other implementations of this typeclass in
common use, which are "function first".
Flipped variant of ap
.
Flipped variant of ap
.
Alias for map
.
Alias for map
.
Add a unit to any Apply to form an Applicative.
Add a unit to any Apply to form an Applicative.
The composition of Functor F
and Bifunctor G
, [x, y]F[G[x, y]]
, is a Bifunctor
The composition of Functor F
and Bifunctor G
, [x, y]F[G[x, y]]
, is a Bifunctor
The composition of ApplicativePlus F
and Applicative G
, [x]F[G[x]]
, is a ApplicativePlus
The composition of ApplicativePlus F
and Applicative G
, [x]F[G[x]]
, is a ApplicativePlus
The composition of PlusEmpty F
and G
, [x]F[G[x]]
, is a PlusEmpty
The composition of Applys F
and G
, [x]F[G[x]]
, is a Apply
The composition of Applys F
and G
, [x]F[G[x]]
, is a Apply
The composition of Functors F
and G
, [x]F[G[x]]
, is a Functor
The composition of Functors F
and G
, [x]F[G[x]]
, is a Functor
Combine fa
and fb
according to Apply[F]
with a function that discards the A
(s)
Combine fa
and fb
according to Apply[F]
with a function that discards the A
(s)
Combine fa
and fb
according to Apply[F]
with a function that discards the B
(s)
Combine fa
and fb
according to Apply[F]
with a function that discards the B
(s)
Filter l
according to an applicative predicate.
Filter l
according to an applicative predicate.
Filter l
according to an applicative predicate.
Filter l
according to an applicative predicate.
Filter map
according to an applicative predicate.
Filter map
according to an applicative predicate. *
An Applicative
for F
in which effects happen in the opposite order.
An Applicative
for F
in which effects happen in the opposite order.
Repeats an applicative action infinitely
Repeats an applicative action infinitely
Twin all A
s in fa
.
Twin all A
s in fa
.
Pair all A
s in fa
with the result of function application.
Pair all A
s in fa
with the result of function application.
The composition of Functor F and Contravariant G, [x]F[G[x]]
,
is contravariant.
The composition of Functor F and Contravariant G, [x]F[G[x]]
,
is contravariant.
Lift f
into F
.
Lift f
into F
.
Lift f
into F
and apply to F[A]
.
Lift f
into F
and apply to F[A]
.
Lift apply(a)
, and apply the result to f
.
Lift apply(a)
, and apply the result to f
.
A lawful implementation of this that is isomorphic up to the methods defined on Applicative allowing for optimised parallel implementations that would otherwise violate laws of more specific typeclasses (e.g.
A lawful implementation of this that is isomorphic up to the methods defined on Applicative allowing for optimised parallel implementations that would otherwise violate laws of more specific typeclasses (e.g. Monad).
Semigroups can be added within an Applicative
Semigroups can be added within an Applicative
The product of ApplicativePlus F
and G
, [x](F[x], G[x]])
, is a ApplicativePlus
The product of PlusEmpty F
and G
, [x](F[x], G[x]])
, is a PlusEmpty
The product of PlusEmpty F
and G
, [x](F[x], G[x]])
, is a PlusEmpty
The product of Plus F
and G
, [x](F[x], G[x]])
, is a Plus
The product of Plus F
and G
, [x](F[x], G[x]])
, is a Plus
The product of Applicatives F
and G
, [x](F[x], G[x]])
, is an Applicative
The product of Applicatives F
and G
, [x](F[x], G[x]])
, is an Applicative
The product of Applys F
and G
, [x](F[x], G[x]])
, is a Apply
The product of Applys F
and G
, [x](F[x], G[x]])
, is a Apply
The product of Functors F
and G
, [x](F[x], G[x]])
, is a Functor
The product of Functors F
and G
, [x](F[x], G[x]])
, is a Functor
Performs the action n
times, returning the list of results.
Performs the action n
times, returning the list of results.
Performs the action n
times, returning nothing.
Performs the action n
times, returning nothing.
Inject a
to the left of B
s in f
.
Inject a
to the left of B
s in f
.
Inject b
to the right of A
s in f
.
Inject b
to the right of A
s in f
.
Unfold seed
to the left and sum using #plus.
Unfold seed
to the right and combine effects left-to-right,
using the given Reducer to combine values.
Unfold seed
to the right and sum using #plus.
Returns the given argument if cond
is false
, otherwise, unit lifted into F.
Returns the given argument if cond
is false
, otherwise, unit lifted into F.
Empty fa
of meaningful pure values, preserving its
structure.
Empty fa
of meaningful pure values, preserving its
structure.
Returns the given argument if cond
is true
, otherwise, unit lifted into F.
Returns the given argument if cond
is true
, otherwise, unit lifted into F.
Functors are covariant by nature, so we can treat an F[A]
as
an F[B]
if A
is a subtype of B
.
Functors are covariant by nature, so we can treat an F[A]
as
an F[B]
if A
is a subtype of B
.
Converts ma
to a value of type F[B]
using the provided functions f
and g
.
Converts ma
to a value of type F[B]
using the provided functions f
and g
.
Converts ma
to a value of type F[B]
using the provided bijection.
Converts ma
to a value of type F[B]
using the provided bijection.
Converts ma
to a value of type F[B]
using the provided isomorphism.
Converts ma
to a value of type F[B]
using the provided isomorphism.
scalaz.Applicative combined with scalaz.PlusEmpty.