43 void pushField(
const char* name);
59 QVariantList toVariantList();
61 void fromVariantList(
const QVariantList& list);
62 void fromVariantMap (
const QVariantMap& map,
bool useIntegerKeys =
false);
64 void setIndex(
int index,
const QVariant& val,
bool raw =
false);
65 void setField(
const char* name,
const QVariant& val,
bool raw =
false);
71 bool callMethod(
const char* name,
int nresults,
QString& err);
72 bool callMethod(
const char* name,
QVariant a1,
int nresults,
QString& err);
80 bool callFunction(
const char* name,
int nresults,
QString& err);
81 bool callFunction(
const char* name,
QVariant a1,
int nresults,
QString& err);
91 template <
class T>
bool traverse(T& obj);
93 bool callMethodPrepare(
const char* name,
bool pushTable,
QString& err);
112 int top1 = lua_gettop(L); Q_UNUSED(top1);
119 while(lua_next(L, pos) != 0)
125 int top2 = lua_gettop(L); Q_UNUSED(top2);
127 assert(top2 == lua_gettop(L));
136 if(
_ref != LUA_NOREF)
138 assert(top1 == lua_gettop(L));
Classe para interface com ambientes Lua.
Definition luaEnv.h:35
lua_State * state()
Retorna o estado Lua armazenado.
Definition luaEnv.h:93
QVariant toVariant(StackOption opt, int index=-1)
Retorna o valor contido no topo da pilha como um QVariant. Se index for diferente de -1,...
Definition luaEnv.cpp:517
StackOption
Opções de manipulação de pilha.
Definition luaEnv.h:40
@ STACK_AUTO
Valor será ou não removido da pilha dependendo de seu tipo.
Definition luaEnv.h:43
@ STACK_POP
Indica que o valor deve ser removido da pilha.
Definition luaEnv.h:41
@ STACK_NOPOP
Indica que o valor não deve ser removido da pilha.
Definition luaEnv.h:42
Classe para interface com ambientes Lua, modelando uma referência para um objeto.
Definition luaObjRef.h:28
int objectPos()
Se o objeto já está na pilha (_ref == LUA_NOREF), simplesmente retorna sua posição....
Definition luaObjRef.cpp:142
LuaEnv * _lua
Estado Lua que contém o objeto.
Definition luaObjRef.h:55
int _ref
Referencia para o objeto.
Definition luaObjRef.h:57
Classe para interface com ambientes Lua, modelando uma tabela.
Definition luaTable.h:32
bool traverse(T &obj)
Passa por todos os itens da tabela chamando obj(Qvariant key, QVariant val), onde key e val contém o ...
Definition luaTable.h:109
void pushField(QString name)
Método sobrecarregado recebendo um QString.
Definition luaTable.h:49
void setField(QString name, const QVariant &val, bool raw=false)
Método sobrecarregado recebendo um QString.
Definition luaTable.h:69
QVariant toVariant() const
Retorna um Qvariant.
Definition luaTable.h:52
QVariant getField(QString name, LuaEnv::StackOption opt=LuaEnv::STACK_AUTO)
Método sobrecarregado recebendo um QString.
Definition luaTable.h:46
Definicao da classe LuaObjRef.
Q_DECLARE_METATYPE(LuaTable)
Cadastra tipo para este poder ser utilizado em um QVariant.
void setValue(const T &value)