_VERSION é a única variável global deixado em Lua 5.1?
-
02-07-2019 - |
Pergunta
intrigado com a Lua 5.0 referências a documentação para coisas como _LOADED
, LUA_PATH
, _ALERT
e assim por diante (que eu não poderia usar em Lua 5.1), descobri todos aqueles foram removidos e a funcionalidade colocar em outro lugar. Estou certo em pensar que a única variável global deixado em Lua 5.1 é _VERSION
?
Solução
Os docs parecem pensar que é quase o caso ....
_G Uma variável global (não uma função) que armazena o ambiente global (Isto é, _G._G = _G). si Lua faz não usar essa variável; mudando seu O valor não afeta qualquer ambiente, nem vice-versa. (Use setfenv à mudança ambientes.)
Parece que há também _PROMPT e _PROMPT2, mas somente quando estiver usando lua autônomo de forma interativa:
Se a variável global _PROMPT contém uma string, então o seu valor é usado como a indicação. Da mesma forma, se o _PROMPT2 variável global contém uma corda, seu valor é usado como o linha secundária (emitida durante demonstrações incompletos). Portanto, tanto instruções podem ser alterados directamente na linha de comando ou em qualquer Lua programas, atribuindo a _PROMPT.
Outras dicas
Assumindo que você não abra qualquer libs, há também _G
, pairs
, ipairs
e newproxy
.