ResourceIO

turbolift.effects.Resource$package.ResourceIO
case object ResourceIO extends ResourceEffect[IO]

Predefined instance of ResourceEffect.

Attributes

Graph
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
trait Signature
class Object
trait Matchable
class Any
Show all
Self type
ResourceIO.type

Members list

Type members

Inherited classlikes

object handlers

Predefined handlers for this effect.

Predefined handlers for this effect.

Attributes

Inherited from:
ResourceEffect
Supertypes
class Object
trait Matchable
class Any

Inherited types

type MirroredElemLabels = EmptyTuple

The names of the product elements

The names of the product elements

Attributes

Inherited from:
Singleton
type MirroredElemTypes = EmptyTuple

Attributes

Inherited from:
Singleton
type MirroredMonoType = Singleton.this.type

The mirrored *-type

The mirrored *-type

Attributes

Inherited from:
Singleton
type MirroredType = Singleton.this.type

Attributes

Inherited from:
Singleton
final override type ThisEffect = Effect.this.type

Attributes

Inherited from:
Effect
type ThisSignature[U] = ResourceSignature[IO] & Signature { type ThisEffect = U; }

API for defining custom effects.

API for defining custom effects.

Attributes

Inherited from:
Effect

Inherited and Abstract types

type MirroredLabel <: String

The name of the type

The name of the type

Attributes

Inherited from:
Mirror

Value members

Inherited methods

final def &![Fx2 <: Signature](fx2: Fx2): Combine2[Effect.this.type, fx2.type]

API for defining custom handlers.

API for defining custom handlers.

Combines with another Effect instance, for the purpose of sharing an Interpreter.

Example of application: implement RWS-alike handler for Reader &! Writer &! State composition of effects.

Attributes

Inherited from:
Effect
def fromProduct(p: Product): MirroredMonoType

Create a new instance of type T with elements taken from product p.

Create a new instance of type T with elements taken from product p.

Attributes

Inherited from:
Singleton
final inline def perform[A, U <: ThisEffect](inline f: (ThisSignature[U]) => Computation[A, U]): Computation[A, U]

API for defining custom effects.

API for defining custom effects.

Embeds an invocation of this Signature's method into the Computation monad. This provides mechanism for separation between syntax an semantics of effects.

Attributes

Inherited from:
Effect
final def performNoInline[A, U <: ThisEffect](f: (ThisSignature[U]) => Computation[A, U]): Computation[A, U]

API for defining custom effects.

API for defining custom effects.

Attributes

Inherited from:
Effect
def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product
final override def register(release: Computation[Unit, IO]): Computation[Unit, ResourceEffect.this.type]

Attributes

Definition Classes
Inherited from:
ResourceEffect
final def scoped[A, V](comp: Computation[A, V & ResourceIO]): Computation[A, V & IO]

Attributes

Inherited from:
ResourceEffect
final def use[A](rf: ResourceFactory[A, IO]): Computation[A, ResourceEffect.this.type]

Attributes

Inherited from:
ResourceEffect
final def use(acquire: Computation[Unit, IO], release: Computation[Unit, IO]): Computation[Unit, ResourceEffect.this.type]

Attributes

Inherited from:
ResourceEffect
final override def use[A](acquire: Computation[A, IO], release: A => Computation[Unit, IO]): Computation[A, ResourceEffect.this.type]

Attributes

Definition Classes
Inherited from:
ResourceEffect

Inherited fields

API for defining custom handlers.

API for defining custom handlers.

Helper object providing type definitions to be used for implementing Interpreters for this effect.

Attributes

Inherited from:
Effect

Exports

Inherited defined exports

final type ThisHandler = [F[_], G[_], N] =>> this.impl.ThisHandler[F, G, N]
Exported from Impl

Attributes

Inherited from:
Effect