essence-of-live-coding-0.2.5: General purpose live coding framework
Safe HaskellSafe-Inferred
LanguageHaskell2010

LiveCoding.CellExcept

Documentation

data CellExcept m a b e where Source #

Constructors

Return :: e -> CellExcept m a b e 
Bind :: CellExcept m a b e1 -> (e1 -> CellExcept m a b e2) -> CellExcept m a b e2 
Try :: (Data e, Finite e) => Cell (ExceptT e m) a b -> CellExcept m a b e 

Instances

Instances details
Monad m => Monad (CellExcept m a b) Source # 
Instance details

Defined in LiveCoding.CellExcept

Methods

(>>=) :: CellExcept m a b a0 -> (a0 -> CellExcept m a b b0) -> CellExcept m a b b0 #

(>>) :: CellExcept m a b a0 -> CellExcept m a b b0 -> CellExcept m a b b0 #

return :: a0 -> CellExcept m a b a0 #

Monad m => Functor (CellExcept m a b) Source # 
Instance details

Defined in LiveCoding.CellExcept

Methods

fmap :: (a0 -> b0) -> CellExcept m a b a0 -> CellExcept m a b b0 #

(<$) :: a0 -> CellExcept m a b b0 -> CellExcept m a b a0 #

Monad m => Applicative (CellExcept m a b) Source # 
Instance details

Defined in LiveCoding.CellExcept

Methods

pure :: a0 -> CellExcept m a b a0 #

(<*>) :: CellExcept m a b (a0 -> b0) -> CellExcept m a b a0 -> CellExcept m a b b0 #

liftA2 :: (a0 -> b0 -> c) -> CellExcept m a b a0 -> CellExcept m a b b0 -> CellExcept m a b c #

(*>) :: CellExcept m a b a0 -> CellExcept m a b b0 -> CellExcept m a b b0 #

(<*) :: CellExcept m a b a0 -> CellExcept m a b b0 -> CellExcept m a b a0 #

runCellExcept :: Monad m => CellExcept m a b e -> Cell (ExceptT e m) a b Source #

try :: (Data e, Finite e) => Cell (ExceptT e m) a b -> CellExcept m a b e Source #

safely :: Monad m => CellExcept m a b Void -> Cell m a b Source #

discardVoid :: Functor m => ExceptT Void m a -> m a Source #

safe :: Monad m => Cell m a b -> CellExcept m a b Void Source #