Module:No globals

維基文庫,自由的圖書館
文档图示 模块文档[查看] [编辑] [历史] [清除缓存]
warning 警告:请勿编辑此处内容。此页由自动化工具维护。所有修改都应该在mediawiki.org上完成。翻译此警告信息
请帮助翻译此页面。

Usage[编辑]

Include this module at the top of your code. An error will be raised any time your code tries to read or write to a non-local (undeclared) variable.

Tests[编辑]

Module:No globals 脚本错误:没有“No globals/testcases”这个模块。
Module:No globals/sandbox 脚本错误:没有“No globals/testcases”这个模块。


local mt = getmetatable(_G) or {}
function mt.__index (t, k)
	if k ~= 'arg' then
		-- perf optimization here and below: do not load Module:TNT unless there is an error
		error(require('Module:TNT').format('I18n/No globals', 'err-read', tostring(k)), 2)
	end
	return nil
end
function mt.__newindex(t, k, v)
	if k ~= 'arg' then
		error(require('Module:TNT').format('I18n/No globals', 'err-write', tostring(k)), 2)
	end
	rawset(t, k, v)
end
setmetatable(_G, mt)