summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/Main.hs10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/Main.hs b/src/Main.hs
index 1862c5b..9fefd82 100644
--- a/src/Main.hs
+++ b/src/Main.hs
@@ -17,6 +17,7 @@ import CheckDir (recursiveCheckDir)
import WriteRepo (writeAdjustedRepository)
import Types (Level (..))
import Util (printPretty)
+import System.Exit (exitWith)
-- | the options this cli tool can take
data Options = Options
@@ -47,15 +48,16 @@ run options = do
lints <- recursiveCheckDir repo entry
- case out options of
- Just outpath -> writeAdjustedRepository repo outpath lints
- Nothing -> pure ()
-
if json options
then printLB
$ if pretty options then encodePretty lints else encode lints
else printPretty (level, lints)
+ case out options of
+ Just outpath -> writeAdjustedRepository repo outpath lints
+ >>= exitWith
+ Nothing -> pure ()
+
-- | haskell's many string types are FUN …
printLB :: LB.ByteString -> IO ()
printLB a = putStrLn $ C8.unpack $ LB.toStrict a