heftia-effects-0.7.0.0: higher-order algebraic effects done right
Copyright(c) 2025 Sayo contributors
LicenseMPL-2.0 (see the LICENSE file)
Maintainerymdfield@outlook.jp
Safe HaskellNone
LanguageGHC2021

Control.Monad.Hefty.Shift

Description

 

Documentation

runShift :: forall (es :: [Effect]) a ans. FOEs es => (a -> Eff es ans) -> Eff (Shift ans (Op (Eff es ans)) ': es) a -> Eff es ans Source #

handleShift :: forall (m :: Type -> Type) ans (n :: Type -> Type). Monad m => AlgHandler (Shift ans (Op (m ans))) n m ans Source #

evalShift :: forall (es :: [Effect]) a. FOEs es => Eff (Shift a (Op (Eff es a)) ': es) a -> Eff es a Source #