« Module:No globals » : différence entre les versions
Aller à la navigation
Aller à la recherche
copié-collé de l'anglais |
m A changé le niveau de protection pour « Module:No globals » ([Modifier=Autoriser uniquement les utilisateurs autopatrolled] (infini) [Renommer=Autoriser uniquement les administrateurs] (infini)) |
||
(2 versions intermédiaires par le même utilisateur 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(' | error( "utilisation d'une variable globale, " .. tostring(k), 2 ) | ||
end | end | ||
return nil | return nil | ||
Ligne 8 : | Ligne 8 : | ||
function mt.__newindex(t, k, v) | function mt.__newindex(t, k, v) | ||
if k ~= 'arg' then | if k ~= 'arg' then | ||
error(' | error( "utilisation d'une variable globale, " .. tostring(k), 2 ) | ||
end | end | ||
rawset(t, k, v) | rawset(t, k, v) | ||
end | end | ||
setmetatable(_G, mt) | setmetatable(_G, mt) |
Dernière version du 17 mai 2017 à 13:44
local mt = getmetatable(_G) or {} function mt.__index (t, k) if k ~= 'arg' then error( "utilisation d'une variable globale, " .. tostring(k), 2 ) end return nil end function mt.__newindex(t, k, v) if k ~= 'arg' then error( "utilisation d'une variable globale, " .. tostring(k), 2 ) end rawset(t, k, v) end setmetatable(_G, mt)