transformers-abort-0.3: A better error monad transformer

Control.Monad.Trans.Finish

Documentation

type Finish f α = FinishT f Identity αSource

runFinish :: Finish f α -> Either f αSource

runFinish' :: Finish α α -> αSource

newtype FinishT f μ α Source

Constructors

FinishT 

Fields

runFinishT :: μ (Either f α)
 

Instances

MonadBaseControl η μ => MonadBaseControl η (FinishT f μ) 
MonadBase η μ => MonadBase η (FinishT f μ) 
MonadTrans (FinishT f) 
MonadTransControl (FinishT f) 
BindTrans (FinishT f) 
Monad μ => Monad (FinishT f μ) 
Functor μ => Functor (FinishT f μ) 
MonadFix μ => MonadFix (FinishT f μ) 
(Functor μ, Monad μ) => Applicative (FinishT f μ) 
MonadIO μ => MonadIO (FinishT f μ) 
MonadControlIO μ => MonadControlIO (FinishT f μ) 
Monad μ => Pointed (FinishT f μ) 
(Functor μ, Monad μ) => Apply (FinishT f μ) 
(Functor μ, Monad μ) => Bind (FinishT f μ) 

runFinishT' :: Monad μ => FinishT α μ α -> μ αSource

finish :: Monad μ => f -> FinishT f μ αSource