fused-effects-readline-0.1.0.1: A readline-like effect and carrier for fused-effects
Safe HaskellNone
LanguageHaskell2010

Control.Carrier.Readline.Haskeline

Synopsis

Readline carrier

runReadline :: (MonadIO m, MonadMask m) => Prefs -> Settings m -> ReadlineC m a -> m a Source #

newtype ReadlineC m a Source #

Constructors

ReadlineC (ReaderC Line (LiftC (InputT m)) a) 

Instances

Instances details
MonadTrans ReadlineC Source # 
Instance details

Defined in Control.Carrier.Readline.Haskeline

Methods

lift :: Monad m => m a -> ReadlineC m a #

(MonadIO m, MonadMask m) => Algebra Readline (ReadlineC m) Source # 
Instance details

Defined in Control.Carrier.Readline.Haskeline

Methods

alg :: forall ctx (n :: Type -> Type) a. Functor ctx => Handler ctx n (ReadlineC m) -> Readline n a -> ctx () -> ReadlineC m (ctx a) #

Monad m => Monad (ReadlineC m) Source # 
Instance details

Defined in Control.Carrier.Readline.Haskeline

Methods

(>>=) :: ReadlineC m a -> (a -> ReadlineC m b) -> ReadlineC m b #

(>>) :: ReadlineC m a -> ReadlineC m b -> ReadlineC m b #

return :: a -> ReadlineC m a #

Functor m => Functor (ReadlineC m) Source # 
Instance details

Defined in Control.Carrier.Readline.Haskeline

Methods

fmap :: (a -> b) -> ReadlineC m a -> ReadlineC m b #

(<$) :: a -> ReadlineC m b -> ReadlineC m a #

MonadFix m => MonadFix (ReadlineC m) Source # 
Instance details

Defined in Control.Carrier.Readline.Haskeline

Methods

mfix :: (a -> ReadlineC m a) -> ReadlineC m a #

Applicative m => Applicative (ReadlineC m) Source # 
Instance details

Defined in Control.Carrier.Readline.Haskeline

Methods

pure :: a -> ReadlineC m a #

(<*>) :: ReadlineC m (a -> b) -> ReadlineC m a -> ReadlineC m b #

liftA2 :: (a -> b -> c) -> ReadlineC m a -> ReadlineC m b -> ReadlineC m c #

(*>) :: ReadlineC m a -> ReadlineC m b -> ReadlineC m b #

(<*) :: ReadlineC m a -> ReadlineC m b -> ReadlineC m a #

MonadIO m => MonadIO (ReadlineC m) Source # 
Instance details

Defined in Control.Carrier.Readline.Haskeline

Methods

liftIO :: IO a -> ReadlineC m a #

Readline effect