in-other-words-0.2.0.0: A higher-order effect system where the sky's the limit
Safe HaskellNone
LanguageHaskell2010

Control.Effect.Internal.Membership

Synopsis

Documentation

data ElemOf (e :: a) (r :: [a]) where Source #

Constructors

Here :: ElemOf e (e ': r) 
There :: ElemOf e r -> ElemOf e (_e ': r) 

Instances

Instances details
Show (ElemOf e r) Source # 
Instance details

Defined in Control.Effect.Internal.Membership

Methods

showsPrec :: Int -> ElemOf e r -> ShowS #

show :: ElemOf e r -> String #

showList :: [ElemOf e r] -> ShowS #

absurdMember :: ElemOf e '[] -> b Source #

sameMember :: forall e e' r. ElemOf e r -> ElemOf e' r -> Maybe (e :~: e') Source #

class Member e r where Source #

A constraint that e is part of the effect row r.

r is typically Derivs m for some m. Member e (Derivs m) allows you to use actions of e with m.

If e occurs multiple times in r, then the first occurence will be used.

If possible, use Eff/s instead.

Methods

membership :: ElemOf e r Source #

Instances

Instances details
(TypeError ((('Text "Unhandled effect: " :<>: 'ShowType e) :$$: 'Text "You need to either add or replace an interpreter in your interpretation stack so that the effect gets handled.") :$$: 'Text "To check what effects are currently handled by your interpretation stack, use `debugEffects' from `Control.Effect.Debug'.") :: Constraint) => Member (e :: k) ('[] :: [k]) Source # 
Instance details

Defined in Control.Effect.Internal.Membership

Methods

membership :: ElemOf e '[] Source #

Member e r => Member (e :: a) (_e ': r :: [a]) Source # 
Instance details

Defined in Control.Effect.Internal.Membership

Methods

membership :: ElemOf e (_e ': r) Source #

Member (e :: a) (e ': r :: [a]) Source # 
Instance details

Defined in Control.Effect.Internal.Membership

Methods

membership :: ElemOf e (e ': r) Source #