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

Classe responsável por prover uma camada mínima sobre um light userdata de maneira que o mesmo possa ser colocado e retirado da pilha de Lua como um QVariant, e portanto, possa ser usado com um LuaEnv. More...

#include <luaLightUserdata.h>

Collaboration diagram for LuaLightUserdata:
Collaboration graph
[legend]

Public Member Functions

 LuaLightUserdata ()
 Construtor. More...
 
 LuaLightUserdata (LuaEnv *env, void *data)
 Constroi um LuaLightUserdata a partir de um valor fornecido pelo usuário. More...
 
 LuaLightUserdata (LuaEnv *env, int index)
 Cria objeto recuperando o light userdata presente no indice recebido como parâmetro. More...
 
void push ()
 Coloca na pilha de Lua o light userdata armazenado.
 
QVariant toVariant () const
 Controi um QVariant que representa este objeto.
 
bool isNull () const
 Retorna true se o dado armazenado for nulo.
 
template<class T >
T * value ()
 Retorna o valor armazenado convertido para um T*.
 

Private Attributes

LuaEnv_lua
 Ambiente Lua associado.
 
void * _data
 Dado armazenado.
 

Detailed Description

Classe responsável por prover uma camada mínima sobre um light userdata de maneira que o mesmo possa ser colocado e retirado da pilha de Lua como um QVariant, e portanto, possa ser usado com um LuaEnv.

Dependendo de como o objeto for construido, pode ser utilizado para colocar um light userdata na pilha, tratá-lo como um QVariant ou ler um dado da pilha facilitando sua recuperação.

Constructor & Destructor Documentation

◆ LuaLightUserdata() [1/3]

LuaLightUserdata::LuaLightUserdata ( )

Construtor.

Construtor default.

◆ LuaLightUserdata() [2/3]

LuaLightUserdata::LuaLightUserdata ( LuaEnv env,
void *  data 
)

Constroi um LuaLightUserdata a partir de um valor fornecido pelo usuário.

Parameters
envAmbiente lua
dataDado a ser encapsulado

◆ LuaLightUserdata() [3/3]

LuaLightUserdata::LuaLightUserdata ( LuaEnv env,
int  index 
)

Cria objeto recuperando o light userdata presente no indice recebido como parâmetro.

Se o valor no indice for de tipo diferente de um light userdata, armazena o valor NULL

Parameters
envAmbiente Lua
indexIndice do userdata na pilha

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