diff --git a/lua-minify.lua b/lua-minify.lua index f9e6a62..388b5b3 100644 --- a/lua-minify.lua +++ b/lua-minify.lua @@ -89,55 +89,6 @@ local util = { printf = printf, } --- --- ParseLua.lua --- --- The main lua parser and lexer. --- LexLua returns a Lua token stream, with tokens that preserve --- all whitespace formatting information. --- ParseLua returns an AST, internally relying on LexLua. --- - --- From http://metalua.luaforge.net/src/lib/strict.lua.html --- --- strict.lua --- checks uses of undeclared global variables --- All global variables must be 'declared' through a regular assignment --- (even assigning nil will do) in a main chunk before being used --- anywhere or assigned to inside a function. --- - -local mt = getmetatable(_G) -if mt == nil then - mt = {} - setmetatable(_G, mt) -end - -__STRICT = true -mt.__declared = {} - -mt.__newindex = function (t, n, v) - if __STRICT and not mt.__declared[n] then - local w = debug.getinfo(2, "S").what - if w ~= "main" and w ~= "C" then - error("assign to undeclared variable '"..n.."'", 2) - end - mt.__declared[n] = true - end - rawset(t, n, v) -end - -mt.__index = function (t, n) - if not mt.__declared[n] and debug.getinfo(2, "S").what ~= "C" then - error("variable '"..n.."' is not declared", 2) - end - return rawget(t, n) -end - -function global(...) - for _, v in ipairs{...} do mt.__declared[v] = true end -end - local lookupify = util.lookupify local WhiteChars = lookupify{' ', '\n', '\t', '\r'}