-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Prettier error -- -- Haskell port of Rust's unwrap and except @package tehepero @version 0 module Control.Panic data Panic Panic :: !CallStack -> !Doc AnsiStyle -> Panic class PrettyEx a prettyEx :: PrettyEx a => a -> Doc AnsiStyle prettyExList :: PrettyEx a => [a] -> Doc AnsiStyle -- | Throw an error with a pretty-printable message. panic :: (MonadThrow m, HasCallStack) => Doc AnsiStyle -> m a -- | Try to obtain the result of a Fallible value. If panics -- it fails. unwrap :: (Fallible f, PrettyEx (Failure f), MonadThrow m, HasCallStack) => f a -> m a -- | Prepend a message if it fails to obtain the result. expect :: (Fallible f, PrettyEx (Failure f), MonadThrow m, HasCallStack) => Doc AnsiStyle -> f a -> m a -- | Add an exception handler for Panic with prettifed output. withPanic :: IO a -> IO a instance GHC.Show.Show Control.Panic.Panic instance (a GHC.Types.~ Data.Text.Prettyprint.Doc.Render.Terminal.Internal.AnsiStyle) => Control.Panic.PrettyEx (Data.Text.Prettyprint.Doc.Internal.Doc a) instance Control.Panic.PrettyEx () instance Control.Panic.PrettyEx GHC.Types.Char instance Control.Panic.PrettyEx a => Control.Panic.PrettyEx [a] instance Control.Panic.PrettyEx GHC.Stack.Types.CallStack instance Control.Panic.PrettyEx GHC.Stack.Types.SrcLoc instance Control.Panic.PrettyEx Control.Panic.Panic instance GHC.Exception.Type.Exception Control.Panic.Panic