lambdabot-utils-4.1: Utility libraries for the advanced IRC bot, LambdabotSource codeContentsIndex
Lambdabot.Signals
Description
The signal story. Posix signals are external events that invoke signal handlers in Haskell. The signal handlers in turn throw dynamic exceptions. Our instance of MonadError for LB maps the dynamic exceptions to SignalCaughts, which can then be caught by a normal catchIrc or handleIrc
Synopsis
newtype SignalException = SignalException Signal
withHandler :: (MonadIO m, MonadError e m) => Signal -> Handler -> m () -> m ()
withHandlerList :: (MonadError e m, MonadIO m) => [Signal] -> (Signal -> Handler) -> m () -> m ()
ircSignalsToCatch :: [Signal]
ircSignalMessage :: Signal -> [Char]
ircSignalHandler :: ThreadId -> Signal -> Handler
releaseSignals :: IO ()
catchLock :: MVar ()
withIrcSignalCatch :: (MonadError e m, MonadIO m) => m () -> m ()
Documentation
newtype SignalException Source
Constructors
SignalException Signal
show/hide Instances
withHandler :: (MonadIO m, MonadError e m) => Signal -> Handler -> m () -> m ()Source
withHandlerList :: (MonadError e m, MonadIO m) => [Signal] -> (Signal -> Handler) -> m () -> m ()Source
ircSignalsToCatch :: [Signal]Source
ircSignalMessage :: Signal -> [Char]Source
ircSignalHandler :: ThreadId -> Signal -> HandlerSource
releaseSignals :: IO ()Source
Release all signal handlers
catchLock :: MVar ()Source
withIrcSignalCatch :: (MonadError e m, MonadIO m) => m () -> m ()Source
Register signal handlers to catch external signals
Produced by Haddock version 2.4.2