Module:No globals : Différence entre versions

De WikiField
Sauter à la navigation Sauter à la recherche
fr>Zebulon84
m (A changé le niveau de protection pour « Module:No globals » ([Modifier=Autoriser uniquement les utilisateurs autopatrolled] (infini) [Renommer=Autoriser uniquement les administrateurs] (infini)))
 
m (1 révision importée)
 
(4 révisions intermédiaires par 3 utilisateurs non affichées)
Ligne 2 : Ligne 2 :
 
function mt.__index (t, k)
 
function mt.__index (t, k)
 
if k ~= 'arg' then
 
if k ~= 'arg' then
error( "utilisation d'une variable globale, " .. tostring(k), 2 )
+
-- 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
 
end
 
return nil
 
return nil
Ligne 8 : Ligne 9 :
 
function mt.__newindex(t, k, v)
 
function mt.__newindex(t, k, v)
 
if k ~= 'arg' then
 
if k ~= 'arg' then
error( "utilisation d'une variable globale, " .. tostring(k), 2 )
+
error(require('Module:TNT').format('I18n/No globals', 'err-write', tostring(k)), 2)
 
end
 
end
 
rawset(t, k, v)
 
rawset(t, k, v)
 
end
 
end
 
setmetatable(_G, mt)
 
setmetatable(_G, mt)

Version actuelle datée du 11 octobre 2019 à 00:10

La documentation pour ce module peut être créée à Module:No globals/doc

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)