ChannelT-0.0.0.7: Generalized stream processors

Safe HaskellTrustworthy
LanguageHaskell2010

Control.Monad.Channel

Documentation

data ChannelT sel m a Source #

Instances

MonadBase b m => MonadBase b (ChannelT sel m) Source # 

Methods

liftBase :: b α -> ChannelT sel m α #

Monad m => MonadChannel sel (ChannelT sel m) Source # 

Methods

syncOn :: sel i o -> o -> ChannelT sel m i Source #

MonadTrans (ChannelT sel) Source # 

Methods

lift :: Monad m => m a -> ChannelT sel m a #

MFunctor * (ChannelT sel) Source # 

Methods

hoist :: Monad m => (forall a. m a -> n a) -> t m b -> t n b #

Generic1 * (ChannelT sel m) Source # 

Associated Types

type Rep1 (ChannelT sel m) (f :: ChannelT sel m -> *) :: k -> * #

Methods

from1 :: f a -> Rep1 (ChannelT sel m) f a #

to1 :: Rep1 (ChannelT sel m) f a -> f a #

Monad m => MonadFree (ChannelF sel) (ChannelT sel m) Source # 

Methods

wrap :: ChannelF sel (ChannelT sel m a) -> ChannelT sel m a #

Monad m => Monad (ChannelT sel m) Source # 

Methods

(>>=) :: ChannelT sel m a -> (a -> ChannelT sel m b) -> ChannelT sel m b #

(>>) :: ChannelT sel m a -> ChannelT sel m b -> ChannelT sel m b #

return :: a -> ChannelT sel m a #

fail :: String -> ChannelT sel m a #

Monad m => Functor (ChannelT sel m) Source # 

Methods

fmap :: (a -> b) -> ChannelT sel m a -> ChannelT sel m b #

(<$) :: a -> ChannelT sel m b -> ChannelT sel m a #

Monad m => Applicative (ChannelT sel m) Source # 

Methods

pure :: a -> ChannelT sel m a #

(<*>) :: ChannelT sel m (a -> b) -> ChannelT sel m a -> ChannelT sel m b #

liftA2 :: (a -> b -> c) -> ChannelT sel m a -> ChannelT sel m b -> ChannelT sel m c #

(*>) :: ChannelT sel m a -> ChannelT sel m b -> ChannelT sel m b #

(<*) :: ChannelT sel m a -> ChannelT sel m b -> ChannelT sel m a #

Generic (ChannelT sel m a) Source # 

Associated Types

type Rep (ChannelT sel m a) :: * -> * #

Methods

from :: ChannelT sel m a -> Rep (ChannelT sel m a) x #

to :: Rep (ChannelT sel m a) x -> ChannelT sel m a #

type Rep1 * (ChannelT sel m) Source # 
type Rep1 * (ChannelT sel m) = D1 * (MetaData "ChannelT" "Control.Monad.Channel.Internal" "ChannelT-0.0.0.7-3HIBLQUHQCELFFxj2jFOMR" True) (C1 * (MetaCons "ChannelT" PrefixI True) (S1 * (MetaSel (Just Symbol "unChannelT") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec1 * (FreeT (ChannelF sel) m))))
type Rep (ChannelT sel m a) Source # 
type Rep (ChannelT sel m a) = D1 * (MetaData "ChannelT" "Control.Monad.Channel.Internal" "ChannelT-0.0.0.7-3HIBLQUHQCELFFxj2jFOMR" True) (C1 * (MetaCons "ChannelT" PrefixI True) (S1 * (MetaSel (Just Symbol "unChannelT") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 * (FreeT (ChannelF sel) m a))))

class Monad m => MonadChannel (sel :: * -> * -> *) (m :: * -> *) | m -> sel where Source #

Minimal complete definition

syncOn

Methods

syncOn :: sel i o -> o -> m i Source #

Instances

Monad m => MonadChannel sel (ChannelT sel m) Source # 

Methods

syncOn :: sel i o -> o -> ChannelT sel m i Source #