| Safe Haskell | Safe-Inferred |
|---|
Text.Chatty.Finalizer
Description
Provides handle-closing.
- class Monad m => MonadFinalizer m where
- newtype HandleCloserT m a = HandleCloser {
- runHandleCloserT :: [Handle] -> m (a, [Handle])
- withLazyIO :: (MonadIO m, Functor m) => HandleCloserT m a -> m a
Documentation
class Monad m => MonadFinalizer m whereSource
Class for all handle-finalizing monads. Required for file redirections.
Methods
Enqueue handle
mqfhs :: [Handle] -> m ()Source
Enqueue list of handles
Finalize all queued handles
Instances
| MonadIO m => MonadFinalizer (HandleCloserT m) | |
| MonadFinalizer m => MonadFinalizer (InRedirT m) | |
| MonadFinalizer m => MonadFinalizer (HereStringT m) | |
| MonadFinalizer m0 => MonadFinalizer (RecorderT m0) | |
| MonadFinalizer m0 => MonadFinalizer (OutRedirT m0) | |
| MonadFinalizer m0 => MonadFinalizer (DeafT m0) | |
| MonadFinalizer m0 => MonadFinalizer (SpawnOverlayT m0) | |
| MonadFinalizer m0 => MonadFinalizer (HtmlPrinterT m0) | |
| MonadFinalizer m0 => MonadFinalizer (AnsiPrinterT m0) | |
| MonadFinalizer m0 => MonadFinalizer (NullExpanderT m0) | |
| MonadFinalizer m0 => MonadFinalizer (ExpanderT m0) | |
| MonadFinalizer m0 => MonadFinalizer (HistoryT m0) |
newtype HandleCloserT m a Source
Handle-closing transformer
Constructors
| HandleCloser | |
Fields
| |
Instances
| MonadTrans HandleCloserT | |
| Monad m => Monad (HandleCloserT m) | |
| Monad m => Functor (HandleCloserT m) | |
| MonadIO m => MonadIO (HandleCloserT m) | |
| MonadRandom m0 => MonadRandom (HandleCloserT m0) | |
| MonadClock m0 => MonadClock (HandleCloserT m0) | |
| MonadIO m => MonadFinalizer (HandleCloserT m) | |
| MonadScanner m0 => MonadScanner (HandleCloserT m0) | |
| MonadPrinter m0 => MonadPrinter (HandleCloserT m0) | |
| MonadSpawn m0 => MonadSpawn (HandleCloserT m0) | |
| ExtendedPrinter m0 => ExtendedPrinter (HandleCloserT m0) | |
| MonadExpand m0 => MonadExpand (HandleCloserT m0) | |
| ExpanderEnv m0 => ExpanderEnv (HandleCloserT m0) | |
| HistoryEnv m0 => HistoryEnv (HandleCloserT m0) |
withLazyIO :: (MonadIO m, Functor m) => HandleCloserT m a -> m aSource
Run function with handle closer