ribosome-host-0.9.9.9: Neovim plugin host for Polysemy
Safe HaskellSafe-Inferred
LanguageHaskell2010

Ribosome.Host.Interpreter.MState

Description

Interpreters for MState.

Synopsis

Documentation

interpretMState :: Members [Resource, Race, Mask mres, Embed IO] r => s -> InterpreterFor (MState s) r Source #

Interpret MState using AtomicState and Lock.

evalMState :: s -> InterpreterFor (MState s) r Source #

Interpret MState as State.

scope :: Members [Mask mres, Resource, Race, Embed IO] r => s -> (() -> Sem (AtomicState s ': (Lock ': r)) a) -> Sem r a Source #

Internal combinator that runs the dependencies of the scope for MState.

interpretMStates :: forall s mres r. Members [Mask mres, Resource, Race, Embed IO] r => InterpreterFor (ScopedMState s) r Source #

Interpret MState as a scoped effect.