haskeline-0.6.3.2: A command-line interface for user input, written in Haskell.

System.Console.Haskeline.MonadException

Description

This module redefines some of the functions in Control.Exception.Extensible to work for more general monads than only IO.

Documentation

class MonadIO m => MonadException m where

Methods

catch :: Exception e => m a -> (e -> m a) -> m a

block :: m a -> m a

unblock :: m a -> m a

Instances

handle :: (MonadException m, Exception e) => (e -> m a) -> m a -> m a

finally :: MonadException m => m a -> m b -> m a

throwIO :: (MonadIO m, Exception e) => e -> m a

throwTo :: (MonadIO m, Exception e) => ThreadId -> e -> m ()

bracket :: MonadException m => m a -> (a -> m b) -> (a -> m c) -> m c

throwDynIO :: (Exception exception, MonadIO m) => exception -> m a

handleDyn :: (Exception exception, MonadException m) => (exception -> m a) -> m a -> m a

class (Typeable e, Show e) => Exception e

Instances

Exception SomeException 
Exception IOException 
Exception NestedAtomically 
Exception NoMethodError 
Exception NonTermination 
Exception PatternMatchFail 
Exception RecConError 
Exception RecSelError 
Exception RecUpdError 
Exception ArithException 
Exception ErrorCall 
Exception ArrayException 
Exception AssertionFailed 
Exception AsyncException 
Exception BlockedIndefinitelyOnMVar 
Exception BlockedIndefinitelyOnSTM 
Exception Deadlock 
Exception ExitCode 
Exception Interrupt 
Exception Dynamic 

data SomeException where

Constructors

SomeException :: Exception e => e -> SomeException