gdritter repos bricoleur / master src / Bricoleur.hs
master

Tree @master (Download .tar.gz)

Bricoleur.hs @masterraw · history · blame

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