diff options
Diffstat (limited to 'app/Exception.hs')
-rw-r--r-- | app/Exception.hs | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/app/Exception.hs b/app/Exception.hs new file mode 100644 index 0000000..83d624d --- /dev/null +++ b/app/Exception.hs @@ -0,0 +1,38 @@ +module Exception + ( AnyException (..), + InvalidTreeGrepperResult (..), + ProcessException (..), + UnknownFileExtension (..), + ) +where + +import Control.Exception +import Data.ByteString.Lazy.Char8 as LB +import System.Exit (ExitCode) + +data AnyException + = InvalidTreeGrepperResult' InvalidTreeGrepperResult + | ProcessException' ProcessException + | UnknownFileExtension' UnknownFileExtension + deriving (Show) + +instance Exception AnyException + +data InvalidTreeGrepperResult = InvalidTreeGrepperResult + { error :: String + } + deriving (Show) + +instance Exception InvalidTreeGrepperResult + +data ProcessException = ProcessException String ExitCode LB.ByteString + deriving (Show) + +instance Exception ProcessException + +data UnknownFileExtension = UnknownFileExtension + { extension :: String + } + deriving (Show) + +instance Exception UnknownFileExtension |