Copyright | (c) 2024 Sayo Koyoneda |
---|---|
License | MPL-2.0 (see the LICENSE file) |
Maintainer | ymdfield@outlook.jp |
Safe Haskell | None |
Language | GHC2021 |
Control.Monad.Hefty.Input
Description
Interpreters for the Input
effect.
Synopsis
- runInputEff :: forall i (ef :: [EffectF]) (eh :: [EffectH]). Eff eh ef i -> Eff eh (Input i ': ef) ~> Eff eh ef
- runInputConst :: forall i (ef :: [Type -> Type]) (eh :: [EffectH]). i -> Eff eh (Input i ': ef) ~> Eff eh ef
- runInputList :: forall i (r :: [Type -> Type]). [i] -> Eff ('[] :: [EffectH]) (Input (Maybe i) ': r) ~> Eff ('[] :: [EffectH]) r
- module Data.Effect.Input
Documentation
runInputEff :: forall i (ef :: [EffectF]) (eh :: [EffectH]). Eff eh ef i -> Eff eh (Input i ': ef) ~> Eff eh ef Source #
Interprets the Input
effect by executing the given input handler each time an input is required.
runInputConst :: forall i (ef :: [Type -> Type]) (eh :: [EffectH]). i -> Eff eh (Input i ': ef) ~> Eff eh ef Source #
Interprets the Input
effect by providing the given constant as input.
runInputList :: forall i (r :: [Type -> Type]). [i] -> Eff ('[] :: [EffectH]) (Input (Maybe i) ': r) ~> Eff ('[] :: [EffectH]) r Source #
module Data.Effect.Input