From fd39958d20554fdc19611c5f23d32c8493ad655e Mon Sep 17 00:00:00 2001 From: Jan Tuomi Date: Fri, 23 Sep 2022 10:38:03 +0300 Subject: Add exceptions, global config --- app/Main.hs | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) (limited to 'app/Main.hs') diff --git a/app/Main.hs b/app/Main.hs index a676a18..669a66e 100644 --- a/app/Main.hs +++ b/app/Main.hs @@ -1,15 +1,10 @@ module Main (main) where import System.Environment -import Control.Monad - +import Control.Monad.Except +import Control.Monad.Reader +import Types import Lib -data Config = Config { - configScriptFileName :: Maybe String, - configVerboseMode :: Bool, - configShowHelp :: Bool -} - parseArgs :: Config -> [String] -> Config parseArgs config args = case args of @@ -40,7 +35,11 @@ main = do error "TODO help" case (configScriptFileName config) of - Just scriptFileName -> runScriptFile scriptFileName + Just scriptFileName -> do + result <- runExceptT $ runReaderT (runScriptFile scriptFileName) config + case result of + Left (LException ex) -> putStrLn $ "Error: " ++ ex + Right () -> return () Nothing -> error "TODO REPL" return () -- cgit v1.3