Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
- data Effects = Effects ReturnEff BreakEff AllocEff
- type AllocEffects s = Effects NoReturn NoBreak (Scope s)
- type ProcEffects s t = Effects (Returns t) NoBreak (Scope s)
- type NoEffects = Effects NoReturn NoBreak NoAlloc
- data ReturnEff
- type family GetReturn effs :: ReturnEff
- type family ClearReturn effs :: Effects
- data BreakEff
- type family GetBreaks effs :: BreakEff
- type family AllowBreak effs :: Effects
- type family ClearBreak effs :: Effects
- data AllocEff
- type family GetAlloc effs :: AllocEff
- type family ClearAlloc effs :: Effects
Documentation
type family ClearReturn effs :: Effects Source
Remove any Return
effects present.
type ClearReturn (Effects r b a) = Effects NoReturn b a Source |
type family AllowBreak effs :: Effects Source
Add the Break
effect into an effect context.
type AllowBreak (Effects r b a) = Effects r Break a Source |
type family ClearBreak effs :: Effects Source
Remove any Break
effect present.
type ClearBreak (Effects r b a) = Effects r NoBreak a Source |
type family ClearAlloc effs :: Effects Source
Remove any allocation effect currently present.
type ClearAlloc (Effects r b a) = Effects r b NoAlloc Source |