aboutsummaryrefslogtreecommitdiff
path: root/nomsu_compiler.moon
diff options
context:
space:
mode:
authorBruce Hill <bitbucket@bruce-hill.com>2018-09-14 14:46:20 -0700
committerBruce Hill <bitbucket@bruce-hill.com>2018-09-14 14:46:29 -0700
commit9bba7dd2cd5860c8b527f10044f7e1c4d1a4a0e2 (patch)
tree3ac088f237f4061e26237be769668682b9818104 /nomsu_compiler.moon
parentd428725c86b3ea8e20b94a13dcf98b748c50aaa0 (diff)
Using more concise peg file finding.
Diffstat (limited to 'nomsu_compiler.moon')
-rw-r--r--nomsu_compiler.moon14
1 files changed, 4 insertions, 10 deletions
diff --git a/nomsu_compiler.moon b/nomsu_compiler.moon
index bc6a25c..ea79843 100644
--- a/nomsu_compiler.moon
+++ b/nomsu_compiler.moon
@@ -78,16 +78,10 @@ make_tree = (tree, userdata)->
Parsers = {}
max_parser_version = 0
for version=1,999
- peg_file = io.open("nomsu.#{version}.peg")
- if not peg_file and package.nomsupath
- for path in package.nomsupath\gmatch("[^;]+")
- peg_file = io.open(path.."/nomsu.#{version}.peg")
- break if peg_file
- break unless peg_file
- max_parser_version = version
- peg_contents = peg_file\read("*a")
- Parsers[version] = make_parser(peg_contents, make_tree)
- peg_file\close!
+ if peg_contents = Files.read("nomsu.#{version}.peg")
+ max_parser_version = version
+ Parsers[version] = make_parser(peg_contents, make_tree)
+ else break
MAX_LINE = 80 -- For beautification purposes, try not to make lines much longer than this value
NomsuCompiler = setmetatable {name:"Nomsu"},