aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJan Tuomi <jans.tuomi@gmail.com>2022-09-26 12:30:50 +0300
committerJan Tuomi <jans.tuomi@gmail.com>2022-12-05 14:21:53 +0200
commit3f5b15b15fbca3dac18f3f5cb39b7826924ff175 (patch)
tree6c009ba1c67db2307aa5f3c1b17a71b93512aa0e /src
parent73ae65e04f7c41dd676d3cbaf3885553352f688c (diff)
Return evaled ASTs from runInlineScript
Diffstat (limited to 'src')
-rw-r--r--src/Lib.hs6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/Lib.hs b/src/Lib.hs
index 86f1d22..00d9f37 100644
--- a/src/Lib.hs
+++ b/src/Lib.hs
@@ -12,12 +12,12 @@ import Tokenizer ( tokenize )
import Parser ( parse )
import Evaluator ( evaluate )
-runScriptFile :: Env -> String -> LContext Env
+runScriptFile :: Env -> String -> LContext (Env, [AST])
runScriptFile env fileName = do
src <- liftIO $ readFile fileName
runInlineScript env src
-runInlineScript :: Env -> String -> LContext Env
+runInlineScript :: Env -> String -> LContext (Env, [AST])
runInlineScript env src = do
tokenized <- tokenize src
config <- ask
@@ -28,7 +28,7 @@ runInlineScript env src = do
liftIO $ putStrLn output
(newEnv, evaluated) <- foldEvaluate env parsed
liftIO $ mapM_ putStrLn (map show evaluated)
- return newEnv
+ return (newEnv, evaluated)
where
foldEvaluate :: Env -> [AST] -> LContext (Env, [AST])
foldEvaluate accEnv [] = return (accEnv, [])