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

Data.Effect.Accum

Description

 

Documentation

data Accum w :: Effect where Source #

Constructors

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

Instances

Instances details
FirstOrder (Accum w) Source # 
Instance details

Defined in Data.Effect.Accum

HFunctor (Accum w) Source # 
Instance details

Defined in Data.Effect.Accum

Methods

hfmap :: (forall x. f x -> g x) -> Accum w f a -> Accum w g a #

type LabelOf (Accum w) Source # 
Instance details

Defined in Data.Effect.Accum

type OrderOf (Accum w) Source # 
Instance details

Defined in Data.Effect.Accum

look'_ :: forall (w :: Type) f es ff c. (Free c ff, f ~ Eff ff es, In (Accum w) es) => f w Source #

look'' :: forall tag (w :: Type) f es ff c. (Free c ff, f ~ Eff ff es, (:>) (Tagged tag (Accum w)) es) => f w Source #

look' :: forall key (w :: Type) f es ff c. (Free c ff, f ~ Eff ff es, Has key (Accum w) es) => f w Source #

look :: forall (w :: Type) f es ff c. (Free c ff, f ~ Eff ff es, (:>) (Accum w) es) => f w Source #

add'_ :: forall (w :: Type) f es ff c. (Free c ff, f ~ Eff ff es, In (Accum w) es) => w -> f () Source #

add'' :: forall tag (w :: Type) f es ff c. (Free c ff, f ~ Eff ff es, (:>) (Tagged tag (Accum w)) es) => w -> f () Source #

add' :: forall key (w :: Type) f es ff c. (Free c ff, f ~ Eff ff es, Has key (Accum w) es) => w -> f () Source #

add :: forall (w :: Type) f es ff c. (Free c ff, f ~ Eff ff es, (:>) (Accum w) es) => w -> f () Source #