Copyright | (c) 2023 Sayo Koyoneda |
---|---|
License | MPL-2.0 (see the file LICENSE) |
Maintainer | [email protected] |
Safe Haskell | None |
Language | GHC2021 |
Data.Effect.Input
Description
This module provides the Input
effect, comes
from Polysemy.Input
in the polysemy
package.
Realizes input of values from the external world.
Synopsis
- data Input i a where
- type LInput i = LiftFOE (Input i)
- pattern LInput :: forall a i f. () => (a ~ i, ()) => LiftFOE (Input i) f a
- input :: SendFOE (Input i) f => f i
- input' :: forall {k} (tag :: k) i f. SendFOE (Tag (Input i) tag) f => f i
- input'' :: forall {k} (key :: k) i f. SendFOEBy key (Input i) f => f i
- inputs :: (Input i <: f, Functor f) => (i -> a) -> f a
Documentation
A general effect representing input of values from the external world.
input' :: forall {k} (tag :: k) i f. SendFOE (Tag (Input i) tag) f => f i Source #
Retrieve a value input from the external world.