module Network.IPFS.Get.Error (Error (..)) where import Network.IPFS.Prelude import Network.IPFS.Types data Error = InvalidCID Text | TimedOut CID Natural | UnexpectedOutput Text | UnknownErr Text deriving ( Show Error Typeable Error Typeable Error -> Show Error -> (Error -> SomeException) -> (SomeException -> Maybe Error) -> (Error -> String) -> Exception Error SomeException -> Maybe Error Error -> String Error -> SomeException forall e. Typeable e -> Show e -> (e -> SomeException) -> (SomeException -> Maybe e) -> (e -> String) -> Exception e displayException :: Error -> String $cdisplayException :: Error -> String fromException :: SomeException -> Maybe Error $cfromException :: SomeException -> Maybe Error toException :: Error -> SomeException $ctoException :: Error -> SomeException $cp2Exception :: Show Error $cp1Exception :: Typeable Error Exception , Error -> Error -> Bool (Error -> Error -> Bool) -> (Error -> Error -> Bool) -> Eq Error forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a /= :: Error -> Error -> Bool $c/= :: Error -> Error -> Bool == :: Error -> Error -> Bool $c== :: Error -> Error -> Bool Eq , (forall x. Error -> Rep Error x) -> (forall x. Rep Error x -> Error) -> Generic Error forall x. Rep Error x -> Error forall x. Error -> Rep Error x forall a. (forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a $cto :: forall x. Rep Error x -> Error $cfrom :: forall x. Error -> Rep Error x Generic , Int -> Error -> ShowS [Error] -> ShowS Error -> String (Int -> Error -> ShowS) -> (Error -> String) -> ([Error] -> ShowS) -> Show Error forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a showList :: [Error] -> ShowS $cshowList :: [Error] -> ShowS show :: Error -> String $cshow :: Error -> String showsPrec :: Int -> Error -> ShowS $cshowsPrec :: Int -> Error -> ShowS Show , [Error] -> Encoding [Error] -> Value Error -> Encoding Error -> Value (Error -> Value) -> (Error -> Encoding) -> ([Error] -> Value) -> ([Error] -> Encoding) -> ToJSON Error forall a. (a -> Value) -> (a -> Encoding) -> ([a] -> Value) -> ([a] -> Encoding) -> ToJSON a toEncodingList :: [Error] -> Encoding $ctoEncodingList :: [Error] -> Encoding toJSONList :: [Error] -> Value $ctoJSONList :: [Error] -> Value toEncoding :: Error -> Encoding $ctoEncoding :: Error -> Encoding toJSON :: Error -> Value $ctoJSON :: Error -> Value ToJSON ) instance Display Error where display :: Error -> Utf8Builder display = \case InvalidCID Text hash -> Utf8Builder "Invalid CID: " Utf8Builder -> Utf8Builder -> Utf8Builder forall a. Semigroup a => a -> a -> a <> Text -> Utf8Builder forall a. Display a => a -> Utf8Builder display Text hash TimedOut (CID Text hash) Natural sec -> [Utf8Builder] -> Utf8Builder forall a. Monoid a => [a] -> a mconcat [ Item [Utf8Builder] "Unable to find CID " , Text -> Utf8Builder forall a. Display a => a -> Utf8Builder display Text hash , Item [Utf8Builder] " before the timeout of " , Natural -> Utf8Builder forall a. Display a => a -> Utf8Builder display Natural sec , Item [Utf8Builder] " seconds." ] UnexpectedOutput Text raw -> Utf8Builder "Unexpected IPFS output: " Utf8Builder -> Utf8Builder -> Utf8Builder forall a. Semigroup a => a -> a -> a <> Text -> Utf8Builder forall a. Display a => a -> Utf8Builder display Text raw UnknownErr Text raw -> Utf8Builder "Unknown IPFS get error: " Utf8Builder -> Utf8Builder -> Utf8Builder forall a. Semigroup a => a -> a -> a <> Text -> Utf8Builder forall a. Display a => a -> Utf8Builder display Text raw