-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | A convenient way to panic. -- -- A convenient way to panic. @package panic @version 0.4.0.0 module Panic -- | The exception thrown when panicing. data Panic a Panic :: a -> String -> [String] -> CallStack -> Panic a [panicComponent] :: Panic a -> a [panicLoc] :: Panic a -> String [panicMsg] :: Panic a -> [String] [panicStack] :: Panic a -> CallStack -- | Description of a component. class Typeable a => PanicComponent a panicComponentName :: PanicComponent a => a -> String -- | ^ Name of the panicing component. panicComponentIssues :: PanicComponent a => a -> String -- | ^ Issue tracker for the panicking component. panicComponentRevision :: PanicComponent a => a -> (String, String) -- | An expression of type a -> (String,String). Uses template -- Haskell to query Git for the current state of the repo. Note that the -- state reported depends on when the module containing the splice was -- compiled. useGitRevision :: Q Exp -- | Request a CallStack. -- -- NOTE: The implicit parameter ?callStack :: CallStack is an -- implementation detail and should not be considered part of the -- CallStack API, we may decide to change the implementation in -- the future. type HasCallStack = ?callStack :: CallStack -- | Throw an exception for the given component. panic :: (PanicComponent a, HasCallStack) => a -> String -> [String] -> b instance Panic.PanicComponent a => GHC.Show.Show (Panic.Panic a) instance Panic.PanicComponent a => GHC.Exception.Exception (Panic.Panic a)