Revision as of 01:28, 1 April 2020 by en>MusikAnimal(Undid revision 948472525 by [[Special:Contributions/w>DiBabelYurikBot|w>DiBabelYurikBot]] ([[User talk:w>DiBabelYurikBot|talk]]))
<translate> This module is rated as [[<tvar name=1>Special:MyLanguage/Category:Modules for general use</tvar>|ready for general use]].</translate> <translate> It has reached a mature form and is thought to be bug-free and ready for use wherever appropriate.</translate> <translate> It is ready to mention on help pages and other resources as an option for new users to learn.</translate> <translate> To reduce server load and bad output, it should be improved by sandbox testing rather than repeated trial-and-error editing.</translate>
<translate> This module is [[<tvar name=1>Special:MyLanguage/Category:Modules subject to page protection</tvar>|subject to {{<tvar name=2>#if:</tvar>|cascading|page}} protection]].</translate> <translate> It is a highly visible module in use by a very large number of pages.</translate> <translate> Because vandalism or mistakes would affect many pages, and even trivial editing might cause substantial load on the servers, it is [[<tvar name=1>Special:MyLanguage/Project:Protected page</tvar>|protected]] from editing.</translate>
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.
localmt=getmetatable(_G)or{}functionmt.__index(t,k)ifk~='arg'thenerror('Tried to read nil global '..tostring(k),2)endreturnnilendfunctionmt.__newindex(t,k,v)ifk~='arg'thenerror('Tried to write global '..tostring(k),2)endrawset(t,k,v)endsetmetatable(_G,mt)