aboutsummaryrefslogtreecommitdiff
path: root/src/parser.lua
diff options
context:
space:
mode:
authorAlexander Pickering <alexandermpickering@gmail.com>2016-09-02 21:42:28 -0400
committerAlexander Pickering <alexandermpickering@gmail.com>2016-09-02 21:42:28 -0400
commit81fb5ea551c3dd8cfcb8e30c0dfed32a9000eea1 (patch)
treeeadec4ff981e758170194f17f1796b60ea5cde7e /src/parser.lua
parent25af93b5d1281e7a0f8d8869c5bff0a2ce8cf1bf (diff)
downloadglum-81fb5ea551c3dd8cfcb8e30c0dfed32a9000eea1.tar.gz
glum-81fb5ea551c3dd8cfcb8e30c0dfed32a9000eea1.tar.bz2
glum-81fb5ea551c3dd8cfcb8e30c0dfed32a9000eea1.zip
Added local variable counting and long string replacement
Diffstat (limited to 'src/parser.lua')
-rw-r--r--src/parser.lua10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/parser.lua b/src/parser.lua
index 0770bf7..56375d6 100644
--- a/src/parser.lua
+++ b/src/parser.lua
@@ -48,7 +48,12 @@ opid: 'add' | 'sub' | 'mul' | 'div' | 'idiv' | 'mod' | 'pow' | 'concat'
]]
local parser = {}
local lpeg = require("lpeg")
-local scope = dofile("../src/scope.lua")
+local scope
+if include ~= nil then
+ scope = include("./scope.lua")
+else
+ scope = dofile("../src/scope.lua")
+end
lpeg.locale(lpeg)
@@ -843,7 +848,8 @@ end
function parser.parse (subject, filename)
local errorinfo = { subject = subject, filename = filename }
- --lpeg.setmaxstack(1000)
+ lpeg.setmaxstack(1000)
+ --debug.getregistry()["lpeg-maxstack"] = 1000
local ast, error_msg = lpeg.match(G, subject, nil, errorinfo)
if not ast then return ast, error_msg end
return traverse(ast, errorinfo)