{-# LANGUAGE DeriveAnyClass #-}
module TDLib.Errors where
import Control.Exception
import Data.Aeson
import Data.ByteString (ByteString)
data TDLibError
=
!Value
|
UnableToParseJSON !ByteString
|
UnableToParseValue !Value
|
UnknownError
deriving (Int -> TDLibError -> ShowS
[TDLibError] -> ShowS
TDLibError -> String
(Int -> TDLibError -> ShowS)
-> (TDLibError -> String)
-> ([TDLibError] -> ShowS)
-> Show TDLibError
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [TDLibError] -> ShowS
$cshowList :: [TDLibError] -> ShowS
show :: TDLibError -> String
$cshow :: TDLibError -> String
showsPrec :: Int -> TDLibError -> ShowS
$cshowsPrec :: Int -> TDLibError -> ShowS
Show, TDLibError -> TDLibError -> Bool
(TDLibError -> TDLibError -> Bool)
-> (TDLibError -> TDLibError -> Bool) -> Eq TDLibError
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: TDLibError -> TDLibError -> Bool
$c/= :: TDLibError -> TDLibError -> Bool
== :: TDLibError -> TDLibError -> Bool
$c== :: TDLibError -> TDLibError -> Bool
Eq, Show TDLibError
Typeable TDLibError
(Typeable TDLibError, Show TDLibError) =>
(TDLibError -> SomeException)
-> (SomeException -> Maybe TDLibError)
-> (TDLibError -> String)
-> Exception TDLibError
SomeException -> Maybe TDLibError
TDLibError -> String
TDLibError -> SomeException
forall e.
(Typeable e, Show e) =>
(e -> SomeException)
-> (SomeException -> Maybe e) -> (e -> String) -> Exception e
displayException :: TDLibError -> String
$cdisplayException :: TDLibError -> String
fromException :: SomeException -> Maybe TDLibError
$cfromException :: SomeException -> Maybe TDLibError
toException :: TDLibError -> SomeException
$ctoException :: TDLibError -> SomeException
$cp2Exception :: Show TDLibError
$cp1Exception :: Typeable TDLibError
Exception)