Modul:No globals
Aus The Homebrew Cloud
Version vom 16. Mai 2018, 13:15 Uhr von ICON (Diskussion | Beiträge) (Schützte „Modul:No globals“ ([Bearbeiten=Nur Administratoren erlauben] (unbeschränkt) [Verschieben=Nur Administratoren erlauben] (unbeschränkt)))
This module causes an error if any nil global is read or if any global is written to, with the exception of arg. To use, add require('Module:No globals')
to the top of the module using it. The arg variable is excluded because it is necessary for Scribunto's require function to work properly. (See the Scribunto source code here.)
Skriptfehler: Interner Lua-Fehler: Der Interpreter beendet sich mit dem Status 1.
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)