aboutsummaryrefslogtreecommitdiff
path: root/nomsu.lua
diff options
context:
space:
mode:
authorBruce Hill <bitbucket@bruce-hill.com>2017-09-19 00:35:37 -0700
committerBruce Hill <bitbucket@bruce-hill.com>2017-09-19 00:35:37 -0700
commitb1b36fead5b4d7b24dfaf2670279928e7764cfb1 (patch)
tree779f17750a4df3466be7fa0589fda94bfa698437 /nomsu.lua
parent3b10a608267ce00cc140b63a19c9433f261f9794 (diff)
Added require instead of run file.
Diffstat (limited to 'nomsu.lua')
-rw-r--r--nomsu.lua8
1 files changed, 8 insertions, 0 deletions
diff --git a/nomsu.lua b/nomsu.lua
index 3267fc9..7ddfd97 100644
--- a/nomsu.lua
+++ b/nomsu.lua
@@ -816,6 +816,13 @@ do
})
return self:tree_to_value(vars.lua_code, inner_vars)
end)
+ self:def("require %filename", function(self, vars)
+ if not self.loaded_files[vars.filename] then
+ local file = io.open(vars.filename)
+ self.loaded_files[vars.filename] = self:run(file:read('*a'))
+ end
+ return self.loaded_files[vars.filename]
+ end)
return self:def("run file %filename", function(self, vars)
local file = io.open(vars.filename)
return self:run(file:read('*a'))
@@ -835,6 +842,7 @@ do
return io.write(...)
end
self.utils = utils
+ self.loaded_files = { }
end,
__base = _base_0,
__name = "NomsuCompiler"