| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
Bluefin.Capability.Tell
Synopsis
- data Tell w (e :: Effects)
- runTell :: forall w (es :: Effects) r. Monoid w => (forall (e :: Effects). Tell w e -> Eff (e :& es) r) -> Eff es (r, w)
- execTell :: forall w (es :: Effects) r. Monoid w => (forall (e :: Effects). Tell w e -> Eff (e :& es) r) -> Eff es w
- tell :: forall (e :: Effects) (es :: Effects) w. e <: es => Tell w e -> w -> Eff es ()
Documentation
In most cases you'll probably prefer Yield
to Tell, but Tell can still be useful in some cases,
for example with Data.Monoid. to determine
whether an event ever occurred.Any
Capability
Instances
| e <: es => OneWayCoercible (Tell w e :: Type) (Tell w es :: Type) | |
Defined in Bluefin.Internal Methods oneWayCoercibleImpl :: OneWayCoercibleD (Tell w e) (Tell w es) # | |
| Handle (Tell w) | |
Defined in Bluefin.Internal Methods handleImpl :: HandleD (Tell w) # | |
| (TypeError ('Text "Tell cannot be cloned. Perhaps you want an STM channel?") :: Constraint) => CloneableHandle (Tell w) | |
Defined in Bluefin.Internal.CloneableHandle Methods cloneableHandleImpl :: CloneableHandleD (Tell w) | |
Handlers
runTell :: forall w (es :: Effects) r. Monoid w => (forall (e :: Effects). Tell w e -> Eff (e :& es) r) -> Eff es (r, w) #
execTell :: forall w (es :: Effects) r. Monoid w => (forall (e :: Effects). Tell w e -> Eff (e :& es) r) -> Eff es w #