aboutsummaryrefslogtreecommitdiff
path: root/nomsu_compiler.lua
diff options
context:
space:
mode:
authorBruce Hill <bruce@bruce-hill.com>2018-09-21 00:26:36 -0700
committerBruce Hill <bruce@bruce-hill.com>2018-09-21 00:27:14 -0700
commitacd9c2acd4688f2301b091daad910c04e402bd6a (patch)
tree411ac06c722b60fb8584b0eef13579c1dd4967a2 /nomsu_compiler.lua
parentd11f9bc5d3971a68dd78cdaca0b046a40a329000 (diff)
Fixed breaking bug with compiler not finding the peg file when running the installed version because it
wasn't looking in the full nomsupath.
Diffstat (limited to 'nomsu_compiler.lua')
-rw-r--r--nomsu_compiler.lua19
1 files changed, 12 insertions, 7 deletions
diff --git a/nomsu_compiler.lua b/nomsu_compiler.lua
index 2e286b7..c3fc802 100644
--- a/nomsu_compiler.lua
+++ b/nomsu_compiler.lua
@@ -131,15 +131,20 @@ end
local Parsers = { }
local max_parser_version = 0
for version = 1, 999 do
- do
- local peg_contents = Files.read("nomsu." .. tostring(version) .. ".peg")
- if peg_contents then
- max_parser_version = version
- Parsers[version] = make_parser(peg_contents, make_tree)
- else
- break
+ local found_version = false
+ for _, full_path in Files.walk("nomsu." .. tostring(version) .. ".peg") do
+ do
+ local peg_contents = Files.read(full_path)
+ if peg_contents then
+ found_version = true
+ max_parser_version = version
+ Parsers[version] = make_parser(peg_contents, make_tree)
+ end
end
end
+ if not (found_version) then
+ break
+ end
end
local MAX_LINE = 80
local NomsuCompiler = setmetatable({ }, {