From 7bb2775667386659402ebb7559c7bc4af46ec268 Mon Sep 17 00:00:00 2001 From: Ben Sima Date: Fri, 15 Jan 2021 19:12:19 -0500 Subject: Implement Biz.Cli Wraps docopt rather nicely. It's much nicer than optparse-applicative and runs tests with the --test argument automatically. Next I just need to implement a test framework. --- Biz/Bild.hs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'Biz/Bild.hs') diff --git a/Biz/Bild.hs b/Biz/Bild.hs index 96f63ad..60ad97a 100644 --- a/Biz/Bild.hs +++ b/Biz/Bild.hs @@ -116,6 +116,7 @@ module Biz.Bild where import Alpha hiding (sym, (<.>)) +import qualified Biz.Cli as Cli import Biz.Namespace (Namespace (..)) import qualified Biz.Namespace as Namespace import qualified Data.Char as Char @@ -125,15 +126,17 @@ import qualified Data.Text as Text import qualified System.Console.Docopt as Docopt import qualified System.Directory as Dir import qualified System.Environment as Env +import qualified System.Exit as Exit import System.FilePath (()) import qualified System.Process as Process import qualified Text.Regex.Applicative as Regex import qualified Prelude main :: IO () -main = Env.getArgs >>= Docopt.parseArgsOrExit help >>= run +main = Cli.main <| Cli.Plan help move test where - run args = + test _ = Exit.exitSuccess + move args = mapM getNamespace (Docopt.getAllArgs args (Docopt.argument "target")) /> catMaybes /> filter isBuildableNs -- cgit v1.2.3