polysemy-conc-0.10.0.0: Polysemy effects for concurrency
Safe HaskellSafe-Inferred
LanguageHaskell2010

Polysemy.Conc.Effect.Mask

Description

 
Synopsis

Documentation

data RestoreMask :: Effect where Source #

Part of an effect abstracting mask.

Constructors

Restore :: m a -> RestoreMask m a 

Instances

Instances details
type DefiningModule RestoreMask Source # 
Instance details

Defined in Polysemy.Conc.Effect.Mask

type DefiningModule RestoreMask = "Polysemy.Conc.Effect.Mask"

restore :: forall r a. Member RestoreMask r => Sem r a -> Sem r a Source #

Restore the previous masking state. Can only be called inside of an action passed to mask or uninterruptibleMask.

newtype Restoration Source #

Resource type for the scoped Mask effect, wrapping the restore callback passed in by mask.

Constructors

Restoration 

Fields

type Mask = Scoped_ RestoreMask Source #

The scoped masking effect.

type UninterruptibleMask = Scoped_ RestoreMask Source #

The scoped uninterruptible masking effect.

mask :: Member Mask r => InterpreterFor RestoreMask r Source #

Mark a region as masked. Uses the Scoped_ pattern.

uninterruptibleMask :: Member UninterruptibleMask r => InterpreterFor RestoreMask r Source #

Mark a region as uninterruptibly masked. Uses the Scoped_ pattern.