Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell98 |
- class PipeClass p where
- runPipe :: Monad m => p i o m r -> m (Maybe r)
- (=$=) :: Monad m => p a b m x -> p b c m y -> p a c m y
- yield :: Monad m => o -> p i o m ()
- await :: Monad m => p i o m (Maybe i)
- onBreak :: Monad m => p i o m r -> m b -> p i o m r
- onDone :: Monad m => p i o m r -> m b -> p i o m r
- finalize :: Monad m => p i o m r -> m b -> p i o m r
- mapMonad :: Monad m => (forall a. m a -> m a) -> p i o m r -> p i o m r
- mapOut :: Monad m => (o -> o') -> p i o m r -> p i o' m r
- mapIn :: Monad m => (i' -> i) -> p i o m r -> p i' o m r
- class PipeClass pc => PipeChoice pc where
- convert :: (PipeClass p, Monad m, Monad (p a b m)) => (a -> b) -> p a b m ()
- data Pipe i o m r
- finally :: (MonadBaseControl IO m, PipeClass p) => p i o m r -> m b -> p i o m r
- bracket :: (MonadBaseControl IO m, PipeClass p, MonadTrans (p i o), Monad (p i o m)) => m a -> (a -> m b) -> (a -> p i o m r) -> p i o m r
Documentation
class PipeClass p where Source
runPipe :: Monad m => p i o m r -> m (Maybe r) Source
(=$=) :: Monad m => p a b m x -> p b c m y -> p a c m y Source
yield :: Monad m => o -> p i o m () Source
await :: Monad m => p i o m (Maybe i) Source
onBreak :: Monad m => p i o m r -> m b -> p i o m r Source
onDone :: Monad m => p i o m r -> m b -> p i o m r Source
finalize :: Monad m => p i o m r -> m b -> p i o m r Source
mapMonad :: Monad m => (forall a. m a -> m a) -> p i o m r -> p i o m r Source
mapOut :: Monad m => (o -> o') -> p i o m r -> p i o' m r Source
mapIn :: Monad m => (i' -> i) -> p i o m r -> p i' o m r Source
class PipeClass pc => PipeChoice pc where Source
Minimal complete definition: appLeft
appLeft :: Monad m => pc b c m r -> pc (Either b d) (Either c d) m r Source
appRight :: Monad m => pc b c m r -> pc (Either d b) (Either d c) m r Source
(++++) :: Monad m => pc b c m () -> pc b' c' m () -> pc (Either b b') (Either c c') m () Source
(||||) :: Monad m => pc b d m () -> pc c d m () -> pc (Either b c) d m () Source
PipeChoice Pipe | |
PipeClass Pipe | |
MonadTrans (Pipe i o) | |
Monad m => Monad (Pipe i o m) | |
Monad m => Functor (Pipe i o m) | |
Monad m => Applicative (Pipe i o m) | |
MonadIO m => MonadIO (Pipe i o m) | |
MonadWriter m => MonadWriter (Pipe i o m) | |
MonadState m => MonadState (Pipe i o m) | |
MonadReader m => MonadReader (Pipe i o m) | |
MonadError m => MonadError (Pipe i o m) | |
type WriterType (Pipe i o m) = WriterType m | |
type StateType (Pipe i o m) = StateType m | |
type EnvType (Pipe i o m) = EnvType m | |
type ErrorType (Pipe i o m) = ErrorType m |
finally :: (MonadBaseControl IO m, PipeClass p) => p i o m r -> m b -> p i o m r Source
bracket :: (MonadBaseControl IO m, PipeClass p, MonadTrans (p i o), Monad (p i o m)) => m a -> (a -> m b) -> (a -> p i o m r) -> p i o m r Source