Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Synopsis
- data CellExcept a b m e where
- Return :: e -> CellExcept a b m e
- Bind :: CellExcept a b m e1 -> (e1 -> CellExcept a b m e2) -> CellExcept a b m e2
- Try :: (Data e, Finite e) => Cell (ExceptT e m) a b -> CellExcept a b m e
- runCellExcept :: Monad m => CellExcept a b m e -> Cell (ExceptT e m) a b
- try :: (Data e, Finite e) => Cell (ExceptT e m) a b -> CellExcept a b m e
- safely :: Monad m => CellExcept a b m Void -> Cell m a b
- discardVoid :: Functor m => ExceptT Void m a -> m a
- safe :: Monad m => Cell m a b -> CellExcept a b m Void
- once :: (Monad m, Data e, Finite e) => (a -> m e) -> CellExcept a arbitrary m e
- once_ :: (Monad m, Data e, Finite e) => m e -> CellExcept a arbitrary m e
Documentation
data CellExcept a b m e where Source #
Return :: e -> CellExcept a b m e | |
Bind :: CellExcept a b m e1 -> (e1 -> CellExcept a b m e2) -> CellExcept a b m e2 | |
Try :: (Data e, Finite e) => Cell (ExceptT e m) a b -> CellExcept a b m e |
Instances
MFunctor (CellExcept a b :: (Type -> Type) -> Type -> Type) Source # | |
Defined in LiveCoding.CellExcept hoist :: forall m n (b0 :: k). Monad m => (forall a0. m a0 -> n a0) -> CellExcept a b m b0 -> CellExcept a b n b0 # | |
Monad m => Monad (CellExcept a b m) Source # | |
Defined in LiveCoding.CellExcept (>>=) :: CellExcept a b m a0 -> (a0 -> CellExcept a b m b0) -> CellExcept a b m b0 # (>>) :: CellExcept a b m a0 -> CellExcept a b m b0 -> CellExcept a b m b0 # return :: a0 -> CellExcept a b m a0 # | |
Monad m => Functor (CellExcept a b m) Source # | |
Defined in LiveCoding.CellExcept fmap :: (a0 -> b0) -> CellExcept a b m a0 -> CellExcept a b m b0 # (<$) :: a0 -> CellExcept a b m b0 -> CellExcept a b m a0 # | |
Monad m => Applicative (CellExcept a b m) Source # | |
Defined in LiveCoding.CellExcept pure :: a0 -> CellExcept a b m a0 # (<*>) :: CellExcept a b m (a0 -> b0) -> CellExcept a b m a0 -> CellExcept a b m b0 # liftA2 :: (a0 -> b0 -> c) -> CellExcept a b m a0 -> CellExcept a b m b0 -> CellExcept a b m c # (*>) :: CellExcept a b m a0 -> CellExcept a b m b0 -> CellExcept a b m b0 # (<*) :: CellExcept a b m a0 -> CellExcept a b m b0 -> CellExcept a b m a0 # |
runCellExcept :: Monad m => CellExcept a b m e -> Cell (ExceptT e m) a b Source #