ContentsIndex
Org.Org.Semantic.HBase.Category.ContinuationPassing
Synopsis
newtype ContinuationPass p a = MkContinuationPass {
unContinuationPass :: ((a -> p) -> p)
}
continuationToMap :: ContinuationPass p a -> p -> p
mapToContinuation :: (p -> p) -> ContinuationPass p ()
liftContinuationPass :: (q -> p) -> (p -> q) -> ContinuationPass q a -> ContinuationPass p a
newtype ExceptionContinuationPass p ex a = MkExceptionContinuationPass {
unExceptionContinuationPass :: (Contextual (ContinuationPass p) (ex -> p) a)
}
unliftECPS :: MonadStandardReference m r => (ex -> m ()) -> ExceptionContinuationPass (m ()) ex a -> m a
liftExceptionContinuationPass :: (q -> p) -> (p -> q) -> ExceptionContinuationPass q ex a -> ExceptionContinuationPass p ex a
runExceptionContinuationPass :: (ex -> p) -> (a -> p) -> ExceptionContinuationPass p ex a -> p
doExceptionContinuationPass :: ExceptionContinuationPass p ex p -> p
doMonadExceptionContinuationPass :: MonadException ex m => ExceptionContinuationPass (m a) ex a -> m a
Documentation
newtype ContinuationPass p a
A continuation-passing monad.
Constructors
MkContinuationPass
unContinuationPass :: ((a -> p) -> p)
Instances
HasContinuations p (ContinuationPass p)
MonadExit p (ContinuationPass p)
HasReturn (ContinuationPass p)
Functor (ContinuationPass p)
FunctorApply (ContinuationPass p)
Monad (ContinuationPass p)
MonadBottom m => MonadBottom (ContinuationPass (m k))
MonadCont (ContinuationPass p)
Monad m => LiftedMonad m (ContinuationPass (m a))
MonadStandardReference m r => StrictlyLiftedMonad m (ContinuationPass (m ()))
MonadStandardReference m r => ReverseLiftedMonad m (ContinuationPass (m ()))
(MonadStandardReference m r, MonadFix m) => MonadFix (ContinuationPass (m ()))
MonadRun p (ContinuationPass p)
continuationToMap :: ContinuationPass p a -> p -> p
mapToContinuation :: (p -> p) -> ContinuationPass p ()
liftContinuationPass :: (q -> p) -> (p -> q) -> ContinuationPass q a -> ContinuationPass p a
newtype ExceptionContinuationPass p ex a
A continuation-passing monad that can handle exceptions of parameterised type 'ex'.
Constructors
MkExceptionContinuationPass
unExceptionContinuationPass :: (Contextual (ContinuationPass p) (ex -> p) a)
Instances
MonadThrow ex (ExceptionContinuationPass p ex)
MonadSingleThrow ex (ExceptionContinuationPass p ex)
HasContinuations p (ExceptionContinuationPass p ex)
MonadException ex (ExceptionContinuationPass p ex)
MonadSingleException ex (ExceptionContinuationPass p ex)
Monad m => LiftedMonad m (ExceptionContinuationPass (m a) ex)
(MonadStandardReference m r, MonadThrow ex m) => StrictlyLiftedMonad m (ExceptionContinuationPass (m ()) ex)
(MonadStandardReference m r, MonadThrow ex m) => ReverseLiftedMonad m (ExceptionContinuationPass (m ()) ex)
(MonadStandardReference m r, MonadFix m) => MonadFix (ExceptionContinuationPass (m ()) ex)
MonadRun (Result ex q) (ExceptionContinuationPass (Result ex q) ex)
MonadExit p (ExceptionContinuationPass p ex)
??? a ex p => HasReturn (ExceptionContinuationPass p ex a)
??? a ex p => Functor (ExceptionContinuationPass p ex a)
??? a ex p => FunctorApply (ExceptionContinuationPass p ex a)
??? a ex p => Monad (ExceptionContinuationPass p ex a)
??? a ex p => MonadCont (ExceptionContinuationPass p ex a)
??? a ex p => MonadBottom (ExceptionContinuationPass p ex a)
MonadGettableReference m IORef => MonadGettableReference (ExceptionContinuationPass (m p) ex) IORef
MonadSettableReference m IORef => MonadSettableReference (ExceptionContinuationPass (m p) ex) IORef
MonadCreatable m IORef => MonadCreatable (ExceptionContinuationPass (m p) ex) IORef
MonadStandardReference m IORef => MonadStandardReference (ExceptionContinuationPass (m p) ex) IORef
unliftECPS :: MonadStandardReference m r => (ex -> m ()) -> ExceptionContinuationPass (m ()) ex a -> m a
liftExceptionContinuationPass :: (q -> p) -> (p -> q) -> ExceptionContinuationPass q ex a -> ExceptionContinuationPass p ex a
runExceptionContinuationPass :: (ex -> p) -> (a -> p) -> ExceptionContinuationPass p ex a -> p
doExceptionContinuationPass :: ExceptionContinuationPass p ex p -> p
doMonadExceptionContinuationPass :: MonadException ex m => ExceptionContinuationPass (m a) ex a -> m a
Produced by Haddock version 0.6