-- | Exceptions arising within numhask.
module NumHask.Exception
  ( NumHaskException (..),
    throw,
  )
where

import Control.Exception
import Data.Typeable (Typeable)
import qualified Prelude as P

-- | A numhask exception.
newtype NumHaskException = NumHaskException {NumHaskException -> String
errorMessage :: P.String}
  deriving (Int -> NumHaskException -> ShowS
[NumHaskException] -> ShowS
NumHaskException -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [NumHaskException] -> ShowS
$cshowList :: [NumHaskException] -> ShowS
show :: NumHaskException -> String
$cshow :: NumHaskException -> String
showsPrec :: Int -> NumHaskException -> ShowS
$cshowsPrec :: Int -> NumHaskException -> ShowS
P.Show, Typeable)

instance Exception NumHaskException