napkin-1.0.0
Safe HaskellNone
LanguageGHC2021

Polysemy.Tap

Synopsis

Documentation

tapBeforeWith :: forall e (r :: EffectRow) (rInitial :: EffectRow) a. (Coercible (e (Sem rInitial) a) (e (Sem r) a), Member e r) => (e (Sem rInitial) a -> Sem r ()) -> e (Sem rInitial) a -> Tactical e (Sem rInitial) r a #

Enables to call action before forwarding request to underlying interpreters. Useful for logging.

tapBeforeWith' :: forall e (r :: EffectRow) (rInitial :: EffectRow) a. (Coercible (e (Sem rInitial) a) (e (Sem r) a), Member e r) => (e (Sem rInitial) a -> Sem r ()) -> e (Sem rInitial) a -> Sem r a #

tapAfterWith :: forall e (r :: EffectRow) (rInitial :: EffectRow) a. (Coercible (e (Sem rInitial) a) (e (Sem r) a), Member e r) => (e (Sem rInitial) a -> Sem r ()) -> e (Sem rInitial) a -> Tactical e (Sem rInitial) r a #

Enables to call action after forwarding request to underlying interpreters. Useful for logging.

tapBeforeWith'' :: forall e (r :: EffectRow) (rInitial :: EffectRow) a. Member e r => (e (Sem rInitial) a -> Sem r ()) -> e (Sem rInitial) a -> Tactical e (Sem rInitial) r a #

tapBeforeAfterWithResult :: forall e (r :: EffectRow) (rInitial :: EffectRow) a. (Coercible (e (Sem rInitial) a) (e (Sem r) a), Member e r) => (e (Sem rInitial) a -> Sem r (a -> Sem r ())) -> e (Sem rInitial) a -> Tactical e (Sem rInitial) r a #

Enables to call action after forwarding request to underlying interpreters. Useful for logging.

tapBeforeAfterWithResult' :: forall e (r :: EffectRow) (rInitial :: EffectRow) a. (Coercible (e (Sem rInitial) a) (e (Sem r) a), Member e r) => (e (Sem rInitial) a -> Sem r (a -> Sem r ())) -> e (Sem rInitial) a -> Sem r a #