A Async[TraceT[F, ?]]
typeclass instance given an instance of Async[F]
.
A Async[TraceT[F, ?]]
typeclass instance given an instance of Async[F]
.
A Bracket[TraceT[F, ?], Throwable]
typeclass instance given an instance of Bracket[F, Throwable]
.
A Bracket[TraceT[F, ?], Throwable]
typeclass instance given an instance of Bracket[F, Throwable]
.
A ConcurrentEffect[TraceT[F, ?]]
typeclass instance given an instance of ConcurrentEffect[F]
and an
instance of TraceContext[F]
.
A ConcurrentEffect[TraceT[F, ?]]
typeclass instance given an instance of ConcurrentEffect[F]
and an
instance of TraceContext[F]
.
Note that this typeclass and the Effect[TraceT[F, ?]]
typeclass are the only instances requiring
an implicit TraceContext[F]
in scope. This is because the tracing must be terminated and the underlying
F
effect exposed in order to ultimately derive a SyncIO
, which the runAsync
function of Effect
and
runCancelable
function of ConcurrentEffect
return, and in order to do that, a TraceContext[F]
must be
made available.
A Concurrent[TraceT[F, ?]]
typeclass instance given an instance of Concurrent[F]
.
A Concurrent[TraceT[F, ?]]
typeclass instance given an instance of Concurrent[F]
.
An Effect[TraceT[F, ?]]
typeclass instance given an instance of Effect[F]
and an instance of TraceContext[F]
.
An Effect[TraceT[F, ?]]
typeclass instance given an instance of Effect[F]
and an instance of TraceContext[F]
.
Note that this typeclass and the ConcurrentEffect[TraceT[F, ?]]
typeclass are the only instances requiring an
implicit TraceContext[F]
in scope. This is because the tracing must be terminated and the underlying F
effect
exposed in order to ultimately derive a SyncIO
, which the runAsync
function of Effect
and runCancelable
function of ConcurrentEffect
return, and in order to do that, a TraceContext[F]
must be made available.
A MonadError[TraceT[F, ?], Throwable]
typeclass instance given an instance of MonadError[F, Throwable]
.
A MonadError[TraceT[F, ?], Throwable]
typeclass instance given an instance of MonadError[F, Throwable]
.
A Monad[TraceT[F, ?]]
typeclass instance given an instance of Monad[F, Throwable]
A Monad[TraceT[F, ?]]
typeclass instance given an instance of Monad[F, Throwable]
A NonEmptyParallel[TraceT[M, ?], TraceT[F, ?]
typeclass instance given an instance of NonEmptyParallel[M, F]
.
A NonEmptyParallel[TraceT[M, ?], TraceT[F, ?]
typeclass instance given an instance of NonEmptyParallel[M, F]
.
_Note that to summon an implicit instance of NonEmptyParallel[M, F]
, if one is not directly available,
you need (at least in the case where M
== cats.effect.IO
) an instance of ContextShift[M]
(*not* ContextShift[TraceT[M, ?]]
) in implicit scope_.
A Parallel[TraceT[M, ?], TraceT[F, ?]
typeclass instance given an instance of Parallel[M, F]
.
A Parallel[TraceT[M, ?], TraceT[F, ?]
typeclass instance given an instance of Parallel[M, F]
.
_Note that to summon an implicit instance of Parallel[M, F]
, if one is not directly available,
you need (at least in the case where M
== cats.effect.IO
) an instance of ContextShift[M]
(*not* ContextShift[TraceT[M, ?]]
) in implicit scope_.
A Sync[TraceT[F, ?]]
typeclass instance given an instance of Sync[F]
.
A Sync[TraceT[F, ?]]
typeclass instance given an instance of Sync[F]
.
A Timer[TraceT[F, ?]]
typeclass instance given an instance of Timer[F].
A Timer[TraceT[F, ?]]
typeclass instance given an instance of Timer[F].
Ask for the current TraceContext[F]
in a TraceT
.
Ask for the current TraceContext[F]
in a TraceT
.
a TraceContext[F]
wrapped in a TraceT
.
Creates a simple, noncancelable TraceT[F, A]
instance that
executes an asynchronous process on evaluation.
Creates a simple, noncancelable TraceT[F, A]
instance that
executes an asynchronous process on evaluation.
The given function is being injected with a side-effectful callback for signaling the final result of an asynchronous process.
Creates a simple, noncancelable TraceT[F, A]
instance that
executes an asynchronous process on evaluation.
Creates a simple, noncancelable TraceT[F, A]
instance that
executes an asynchronous process on evaluation. Differentiated from async
in that the callback returns an effect.
The given function is being injected with a side-effectful callback for signaling the final result of an asynchronous process.
Creates a cancelable TraceT[F, A]
instance that executes an
asynchronous process on evaluation.
Creates a cancelable TraceT[F, A]
instance that executes an
asynchronous process on evaluation.
This builder accepts a registration function that is being injected with a side-effectful callback, to be called when the asynchronous process is complete with a final result.
Generate a ContextShift[TraceT[F, ?]]
given a ContextShift[F] and
Monad[F] in implicit scope.
The context shift data structure provides a means by which a program can be evaluated on a thread pool
(really, an
scala.concurrent.ExecutionContext representing the pool) and then will shift back to the
ExecutionContext
it was created with.
Generates a ContextShift[TraceT[F, ?]
in implicit scope, given a Monad[F]
and ContextShift[F]
in implicit scope.
Generates a ContextShift[TraceT[F, ?]
in implicit scope, given a Monad[F]
and ContextShift[F]
in implicit scope.
Lifts the non-strict, possibly impure expression computing A
into a TraceT[F, A]
context.
Lifts the non-strict, possibly impure expression computing A
into a TraceT[F, A]
context.
the non-strict expression computing A
to lift into a TraceT
context.
a non-strict expression which computes A
lifted into a TraceT
.
Defines a conversion from IO
in terms of the Concurrent
type class.
An instance of the polymorphic function F
~> TraceT[F, ?]
for any effectful program result type ?
is made available in implicit scope.
An instance of the polymorphic function F
~> TraceT[F, ?]
for any effectful program result type ?
is made available in implicit scope.
Lifts a value A
into a TraceT[F, A]
.
Lifts a value A
into a TraceT[F, A]
.
the pure value A
to lift into a TraceT
context.
a pure value A
wrapped in a TraceT
.
Creates a failed TraceT
, to create a failed underlying program, lifted to a TraceT
.
Creates a failed TraceT
, to create a failed underlying program, lifted to a TraceT
.
the Throwable
with which to fail the underlying program.
the TraceT[F, A]
in a failed state.
Asynchronous boundary described as an effectful TraceT[F, Unit]
managed
by the provided ContextShift
.
Asynchronous boundary described as an effectful TraceT[F, Unit]
managed
by the provided ContextShift
.
This operation can be used in flatMap
chains to "shift" the
continuation of the run-loop to another thread or call stack.
Lifts the non-strict, possibly impure expression computing a TraceT[F, A]
into a TraceT[F, A]
.
Lifts the non-strict, possibly impure expression computing a TraceT[F, A]
into a TraceT[F, A]
.
The expression is suspended until the outer TraceT
returned is run.
the non-strict expression computing TraceT[F, A]
to lift into a TraceT
context suspended
until the outer TraceT
is run.
a non-strict expression which computes TraceT[F, A]
lifted into a TraceT
in
a suspended state until the outer TraceT
is run.
Generates a Timer[TraceT[F, ?]]
given a Timer[F]
in implicit scope.
Lifts a program F
which computes A
into a TraceT[F, A]
context.
Lifts a program F
which computes A
into a TraceT[F, A]
context.
a program F
which computes a value A
.
a TraceT[F, A]
wrapping the passed in effectful program.
(Since version ) see corresponding Javadoc for more information.
The
TraceT
companion provides smart constructors for desiredTraceT
instances and type class isntances.