module Exception ( AnyException (..), InvalidTreeGrepperResult (..), NoCommits (..), ProcessException (..), UnknownFileExtension (..), InvalidDiff (..), ) where import Control.Exception import Data.ByteString.Lazy.Char8 as LB import System.Exit (ExitCode) data AnyException = InvalidTreeGrepperResult' InvalidTreeGrepperResult | NoCommits' NoCommits | ProcessException' ProcessException | UnknownFileExtension' UnknownFileExtension | InvalidDiff' InvalidDiff deriving (Show) instance Exception AnyException data InvalidTreeGrepperResult = InvalidTreeGrepperResult { error :: String } deriving (Show) instance Exception InvalidTreeGrepperResult data NoCommits = NoCommits deriving (Show) instance Exception NoCommits data ProcessException = ProcessException String ExitCode LB.ByteString deriving (Show) instance Exception ProcessException data UnknownFileExtension = UnknownFileExtension { extension :: String } deriving (Show) instance Exception UnknownFileExtension data InvalidDiff = InvalidDiff String deriving (Show) instance Exception InvalidDiff