data-effects-0.1.0.0: A basic framework for effect systems based on effects represented by GADTs.
Copyright(c) 2023 Yamada Ryo
LicenseMPL-2.0 (see the file LICENSE)
Maintainerymdfield@outlook.jp
Stabilityexperimental
Portabilityportable
Safe HaskellSafe-Inferred
LanguageGHC2021

Data.Effect.Accum

Description

 

Documentation

data Accum w a where Source #

Constructors

Add :: w -> Accum f () 
Look :: Accum w w 

type LAccum w = LiftIns (Accum w) Source #

pattern LLook :: () => a ~ w => LiftIns (Accum w) f a Source #

pattern LAdd :: () => a ~ () => w -> LiftIns (Accum f) f a Source #

look'' :: forall key (w :: Type) f. SendInsBy key (Accum w) f => f w Source #

look' :: forall tag (w :: Type) f. SendIns (Tag (Accum w) tag) f => f w Source #

look :: forall (w :: Type) f. SendIns (Accum w) f => f w Source #

add'' :: forall key (w :: Type) (f :: Type) f. SendInsBy key (Accum f) f => w -> f () Source #

add' :: forall tag (w :: Type) (f :: Type) f. SendIns (Tag (Accum f) tag) f => w -> f () Source #

add :: forall (w :: Type) (f :: Type) f. SendIns (Accum f) f => w -> f () Source #