模块:No globals:修订间差异

来自Hyacinth
跳转到导航 跳转到搜索
删除的内容 添加的内容
草awa留言 | 贡献
Created page with "local mt = getmetatable(_G) or {} function mt.__index (t, k) if k ~= 'arg' then error('尝试读取空全局变量:' .. tostring(k), 2) end return nil end function mt.__newindex(t, k, v) if k ~= 'arg' then error('尝试写入全局变量:' .. tostring(k), 2) end rawset(t, k, v) end setmetatable(_G, mt)"
 
草awa留言 | 贡献
无编辑摘要
 
第2行: 第2行:
function mt.__index (t, k)
function mt.__index (t, k)
if k ~= 'arg' then
if k ~= 'arg' then
error('尝试读取空全局变量:' .. tostring(k), 2)
error('Tried to read nil global ' .. tostring(k), 2)
end
end
return nil
return nil
第8行: 第8行:
function mt.__newindex(t, k, v)
function mt.__newindex(t, k, v)
if k ~= 'arg' then
if k ~= 'arg' then
error('尝试写入全局变量:' .. tostring(k), 2)
error('Tried to write global ' .. tostring(k), 2)
end
end
rawset(t, k, v)
rawset(t, k, v)

2022年12月25日 (日) 02:15的最新版本

此模块的文档可以在模块:No globals/doc创建

local mt = getmetatable(_G) or {}
function mt.__index (t, k)
	if k ~= 'arg' then
		error('Tried to read nil global ' .. tostring(k), 2)
	end
	return nil
end
function mt.__newindex(t, k, v)
	if k ~= 'arg' then
		error('Tried to write global ' .. tostring(k), 2)
	end
	rawset(t, k, v)
end
setmetatable(_G, mt)