Lua Utils
Biblioteca utilitária para facilitar a integração de Lua com C++
Public Member Functions | Private Attributes | List of all members
LuaStackBalancer Class Reference

Classe auxiliar que garante o balanceamento da pilha de Lua. More...

#include <luaStackBalancer.h>

Collaboration diagram for LuaStackBalancer:
Collaboration graph
[legend]

Public Member Functions

 LuaStackBalancer (LuaEnv *lua)
 Construtor. Registra estado atual da pilha se lua != NULL.
 
 ~LuaStackBalancer ()
 Destrutor. Remove itens a mais na pilha.
 

Private Attributes

LuaEnv_lua
 Ambiente Lua.
 
int _top
 Topo da pilha no momento da construção do objeto.
 

Detailed Description

Classe auxiliar que garante o balanceamento da pilha de Lua.

Quando um obeto da classe é criado, registra a posição atual da pilha. A ser destruido, remove itens a mais na pilha. Se a pilha possuir menos itens do que originalmente, gera um assert.

IMPORTANTE: Nunca use um objeto desta classe em uma função que pode levantar um erro via luaL_error(). Esta função coloca a mensagem na pilha, e esta será removida pelo stack balancer antes da mesma ser mostrada pelo Lua....


The documentation for this class was generated from the following file: