module Bricoleur
( main,
Opt.getOpts,
)
where
import qualified Bricoleur.Commands.Splice as Cmd
import qualified Bricoleur.Commands.Test as Cmd
import qualified Bricoleur.Config as Conf
import qualified Bricoleur.Opts as Opt
import qualified System.Exit as Sys
-- | Run the main @bricoleur@ function with the provided options.
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