module Currycarbon.Utils (
CurrycarbonException (..),
renderCurrycarbonException
) where
import Control.Exception (Exception)
data CurrycarbonException =
CurrycarbonCLIParsingException String
| CurrycarbonCalibrationRangeException String
deriving (Int -> CurrycarbonException -> ShowS
[CurrycarbonException] -> ShowS
CurrycarbonException -> String
(Int -> CurrycarbonException -> ShowS)
-> (CurrycarbonException -> String)
-> ([CurrycarbonException] -> ShowS)
-> Show CurrycarbonException
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [CurrycarbonException] -> ShowS
$cshowList :: [CurrycarbonException] -> ShowS
show :: CurrycarbonException -> String
$cshow :: CurrycarbonException -> String
showsPrec :: Int -> CurrycarbonException -> ShowS
$cshowsPrec :: Int -> CurrycarbonException -> ShowS
Show)
instance Exception CurrycarbonException
renderCurrycarbonException :: CurrycarbonException -> String
renderCurrycarbonException :: CurrycarbonException -> String
renderCurrycarbonException (CurrycarbonCLIParsingException String
s) =
String
"<!> Error: Input can not be parsed\n" String -> ShowS
forall a. [a] -> [a] -> [a]
++ String
s
renderCurrycarbonException (CurrycarbonCalibrationRangeException String
s) =
String
s String -> ShowS
forall a. [a] -> [a] -> [a]
++ String
" <!> Error: Date outside of calibration range"