cps.monads.catsEffect
Members list
Type members
Classlikes
part of asyncScope
part of asyncScope
Attributes
- See also:
asyncScope
- Graph
- Supertypes
- class Objecttrait Matchableclass Any
Attributes
- Graph
- Supertypes
- trait CpsAsyncEffectMonad[F]trait CpsEffectMonad[F]trait CpsAsyncMonad[F]class CatsMonadThrow[F]trait CpsTryMonad[F]trait CpsThrowMonad[F]class CatsMonad[F]trait CpsMonadInstanceContext[F]trait CpsMonad[F]trait CpsAwaitable[F]class Objecttrait Matchableclass Any
- Known subtypes
- class CatsConcurrent[F]class CatsIOCpsAsyncMonad
Attributes
- Graph
- Supertypes
- trait CpsConcurrentEffectMonad[F]trait CpsConcurrentMonad[F]class CatsAsync[F]trait CpsAsyncEffectMonad[F]trait CpsEffectMonad[F]trait CpsAsyncMonad[F]class CatsMonadThrow[F]trait CpsTryMonad[F]trait CpsThrowMonad[F]class CatsMonad[F]trait CpsMonadInstanceContext[F]trait CpsMonad[F]trait CpsAwaitable[F]class Objecttrait Matchableclass Any
- Known subtypes
- class CatsIOCpsAsyncMonad
CpsAsyncMonad for cats-effect.
CpsAsyncMonad for cats-effect.
Attributes
- Graph
- Supertypes
- class CatsConcurrent[IO]trait CpsConcurrentEffectMonad[IO]trait CpsConcurrentMonad[IO]class CatsAsync[IO]trait CpsAsyncEffectMonad[IO]trait CpsEffectMonad[IO]trait CpsAsyncMonad[IO]class CatsMonadThrow[IO]trait CpsTryMonad[IO]trait CpsThrowMonad[IO]class CatsMonad[IO]trait CpsMonadInstanceContext[IO]trait CpsMonad[IO]trait CpsAwaitable[IO]class Objecttrait Matchableclass Any
Attributes
- Graph
- Supertypes
- trait CpsMonadInstanceContext[F]trait CpsMonad[F]trait CpsAwaitable[F]class Objecttrait Matchableclass Any
- Known subtypes
Attributes
- Graph
- Supertypes
- trait CpsTryMonad[F]trait CpsThrowMonad[F]class CatsMonad[F]trait CpsMonadInstanceContext[F]trait CpsMonad[F]trait CpsAwaitable[F]class Objecttrait Matchableclass Any
- Known subtypes
Value members
Concrete methods
Produce effect with resource-aware scope block.
Produce effect with resource-aware scope block.
val effect = asyncScope[IO] {
val reader = await(openFile(input))
val writer = await(openFile(output))
writer.transformFrom(0,Long.MaxValue,reader)
}
Here evaluation of effect will open reader and wrier, transfer data and then close reader and writer. block inside asyncScope evaluated in CpsResourceMonad[[X]=>>Resource[F,X]]
Attributes
- See also:
[cps.monads.catsEffect.CpsResourceMonad]
Givens
Givens
into F[T] to [A] =>> Resource[F,A] for using inside asyncScope
into F[T] to [A] =>> Resource[F,A] for using inside asyncScope
Attributes
Extensions
Extensions
Pseudo-synchronious syntax for resource, which can be used in async block.
Pseudo-synchronious syntax for resource, which can be used in async block.
Usage: assuming we have:
def open(file: File): Resource[IO, BufferedReader]
we can
async[IO] {
....
open(file).useOn{ buffer =>
await(doSomething)
buffer.write(r)
result
}
}
Attributes
Pseudo-synchronious syntax for resource, which can be used in async block.
Pseudo-synchronious syntax for resource, which can be used in async block.
async[IO] {
....
useing(openFile){ buffer =>
await(doSomething)
buffer.write(r)
result
}
}
Attributes
Pseudo-synchronious syntax for resource, which can be used in async block.
Pseudo-synchronious syntax for resource, which can be used in async block.
async[IO] {
....
useing(openFile){ buffer =>
await(doSomething)
buffer.write(r)
result
}
}
Attributes
Pseudo-synchronious syntax for resource, which can be used in async block.
Pseudo-synchronious syntax for resource, which can be used in async block.
async[IO] {
....
useing(openFile){ buffer =>
await(doSomething)
buffer.write(r)
result
}
}