aboutsummaryrefslogtreecommitdiff
path: root/parser.moon
diff options
context:
space:
mode:
authorBruce Hill <bitbucket@bruce-hill.com>2018-06-24 23:21:07 -0700
committerBruce Hill <bitbucket@bruce-hill.com>2018-06-24 23:21:11 -0700
commit4fd6d817c87fe3927c48a3c47440c92adb35065e (patch)
tree0cc03a59980109d557d22ac55ebb3ed9d9480a30 /parser.moon
parent2db2c68ac32fa3ebeedda569a587332551b6a70e (diff)
Reducing imports.
Diffstat (limited to 'parser.moon')
-rw-r--r--parser.moon9
1 files changed, 5 insertions, 4 deletions
diff --git a/parser.moon b/parser.moon
index e7ee809..d8bd834 100644
--- a/parser.moon
+++ b/parser.moon
@@ -2,8 +2,7 @@
lpeg = require 'lpeg'
re = require 're'
lpeg.setmaxstack 10000
-{:P,:R,:V,:S,:Cg,:C,:Cp,:B,:Cmt,:Carg} = lpeg
-utils = require 'utils'
+{:P,:R,:S,:C,:Cmt,:Carg} = lpeg
{:match, :sub} = string
{:NomsuCode, :LuaCode, :Source} = require "code_obj"
AST = require "nomsu_tree"
@@ -51,7 +50,9 @@ NOMSU_DEFS = with {}
seen_errors = userdata.errors
if seen_errors[start_pos]
return true
- if utils.size(seen_errors) >= 10
+ num_errors = 0
+ for _ in pairs(seen_errors) do num_errors += 1
+ if num_errors >= 10
seen_errors[start_pos+1] = colored.bright colored.yellow colored.onred "Too many errors, canceling parsing..."
return #src+1
err_pos = start_pos
@@ -122,7 +123,7 @@ Parser.parse = (nomsu_code, source=nil)->
tree = nil
if next(userdata.errors)
- keys = utils.keys(userdata.errors)
+ keys = [k for k,v in pairs(userdata.errors)]
table.sort(keys)
errors = [userdata.errors[k] for k in *keys]
error("Errors occurred while parsing:\n\n"..table.concat(errors, "\n\n"), 0)