{-# LANGUAGE OverloadedStrings #-} module Collage ( main , Opt.getOpts ) where import qualified System.Exit as Sys import qualified Collage.Config as Conf import qualified Collage.Opts as Opt import qualified Collage.Commands.Splice as Cmd import qualified Collage.Commands.Test as Cmd main :: Opt.Options -> IO () main opts = do configMb <- Conf.getConfig (Opt.optFile opts) config <- case configMb of Left err -> Sys.die err Right x -> return x case Opt.optCommand opts of Opt.Test -> Cmd.runTest config opts Opt.Splice -> Cmd.runSplice config opts