key-0.1.0.0: Type-safe unconstrained dynamic typing

Safe HaskellNone
LanguageHaskell2010

Control.Monad.Trans.Key

Documentation

data Keyring s a Source #

Instances
Monad (Keyring s) Source # 
Instance details

Defined in Control.Monad.Trans.Key

Methods

(>>=) :: Keyring s a -> (a -> Keyring s b) -> Keyring s b #

(>>) :: Keyring s a -> Keyring s b -> Keyring s b #

return :: a -> Keyring s a #

fail :: String -> Keyring s a #

Functor (Keyring s) Source # 
Instance details

Defined in Control.Monad.Trans.Key

Methods

fmap :: (a -> b) -> Keyring s a -> Keyring s b #

(<$) :: a -> Keyring s b -> Keyring s a #

Applicative (Keyring s) Source # 
Instance details

Defined in Control.Monad.Trans.Key

Methods

pure :: a -> Keyring s a #

(<*>) :: Keyring s (a -> b) -> Keyring s a -> Keyring s b #

liftA2 :: (a -> b -> c) -> Keyring s a -> Keyring s b -> Keyring s c #

(*>) :: Keyring s a -> Keyring s b -> Keyring s b #

(<*) :: Keyring s a -> Keyring s b -> Keyring s a #

data Key s a Source #

Instances
TestEquality (Key s :: k1 -> Type) Source # 
Instance details

Defined in Control.Monad.Trans.Key

Methods

testEquality :: Key s a -> Key s b -> Maybe (a :~: b) #

unKeyring :: (forall s. Keyring s a) -> a Source #