module Development.Duplo.Types.Builder where
import Control.Exception (Exception)
import Data.Typeable (Typeable)
data BuilderException = MissingGithubUserException
| MissingGithubRepoException
| MalformedManifestException String
| MissingManifestException String
deriving (Typeable)
instance Exception BuilderException
instance Show BuilderException where
show MissingGithubUserException =
"There must be a GitHub user."
show MissingGithubRepoException =
"There must be a GitHub repo."
show (MalformedManifestException path) =
"The manifest file `" ++ path ++ "` is not a valid duplo JSON."
show (MissingManifestException path) =
"`" ++ path ++ "` is expected at the current location."