package instances
- Source
- package.scala
- Alphabetic
- By Inheritance
- instances
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- class CatsAsyncForTask extends CatsBaseForTask[Throwable] with Async[Task]
Cats type class instance of Task for
cats.effect.Async
andCoflatMap
(and implicitly forApplicative
,Monad
,MonadError
, etc).Cats type class instance of Task for
cats.effect.Async
andCoflatMap
(and implicitly forApplicative
,Monad
,MonadError
, etc).References:
- class CatsBaseForTask[E] extends MonadError[[β$0$]IO[E, β$0$], E] with CoflatMap[[β$1$]IO[E, β$1$]] with SemigroupK[[β$2$]IO[E, β$2$]] with Bifunctor[IO]
Cats type class instances for Task for
cats.MonadError
,CoflatMap
,SemigroupK
andBifunctor
(and implicitly forApplicative
,Monad
, etc).Cats type class instances for Task for
cats.MonadError
,CoflatMap
,SemigroupK
andBifunctor
(and implicitly forApplicative
,Monad
, etc).References:
- class CatsConcurrentEffectForTask extends CatsEffectForTask with ConcurrentEffect[Task]
Cats type class instances of IO for
cats.effect.ConcurrentEffect
.Cats type class instances of IO for
cats.effect.ConcurrentEffect
.Note this is a separate class from CatsConcurrentForTask, because we need an implicit Scheduler in scope in order to trigger the execution of a
Task
. However we cannot inherit directly fromCatsConcurrentForTask
, because it would create conflicts due to that one having a higher priority but being a super-type.References:
- class CatsConcurrentForTask extends CatsAsyncForTask with Concurrent[Task]
Cats type class instance of IO for
cats.effect.Concurrent
.Cats type class instance of IO for
cats.effect.Concurrent
.References:
- class CatsEffectForTask extends CatsBaseForTask[Throwable] with Effect[Task]
Cats type class instances of IO for
cats.effect.Effect
(and implicitly forApplicative
,Monad
,MonadError
,Sync
, etc).Cats type class instances of IO for
cats.effect.Effect
(and implicitly forApplicative
,Monad
,MonadError
,Sync
, etc).Note this is a separate class from CatsAsyncForTask, because we need an implicit Scheduler in scope in order to trigger the execution of a
Task
. However we cannot inherit directly fromCatsAsyncForTask
, because it would create conflicts due to that one having a higher priority but being a super-type.References:
- class CatsMonadToMonoid[F[_], A] extends CatsMonadToSemigroup[F, A] with Monoid[F[A]]
Given that
A
has acats.Semigroup
implementation, this builds aSemigroup[F[A]]
instance for anyF[_]
data type that implementscats.Monad
.Given that
A
has acats.Semigroup
implementation, this builds aSemigroup[F[A]]
instance for anyF[_]
data type that implementscats.Monad
.Used for IO.
NOTE: nothing in this implementation is specific to Monix or to
cats-effect
, but these instances are not provided by default by Cats for any monad, probably because they aren't useful for every monad. - class CatsMonadToSemigroup[F[_], A] extends Semigroup[F[A]]
Given that
A
has acats.Monoid
implementation, this builds aSemigroup[F[A]]
instance for anyF[_]
data type that implementscats.effect.Sync
.Given that
A
has acats.Monoid
implementation, this builds aSemigroup[F[A]]
instance for anyF[_]
data type that implementscats.effect.Sync
.Used for IO.
NOTE: nothing in this implementation is specific to Monix or to
cats-effect
, but these instances are not provided by default by Cats for any monad, probably because they aren't useful for every monad. - class CatsParallelForTask[E] extends Parallel[[β$0$]IO[E, β$0$]]
cats.Parallel
type class instance for IO.cats.Parallel
type class instance for IO.A
cats.Parallel
instances means thatTask
can be used for processing tasks in parallel (with non-deterministic effects ordering).References:
Value Members
- object CatsConcurrentForTask extends CatsConcurrentForTask
Default and reusable instance for CatsConcurrentForTask.
Default and reusable instance for CatsConcurrentForTask.
Globally available in scope, as it is returned by IO.catsAsync.