Comments (2)
It is maybe like this
int luafnc(lua_State* L)
{
int nRows = dataTable.NumOfRows();
int nField = dataTable.NumOfFields();
kaguya::State state(L);
kaguya::LuaTable array= state.newTable(nRows);
for (int i = 0; i < nRows; i++)
{
kaguya::LuaTable row= state.newTable(0,nField);
for (int j = 0; j < nField; j++)
{
dataTable.SetRow(i);
row[dataTable.NameOfField(j)] = dataTable.ValueOfField(j);
}
array[i + 1] = row;
}
state.pushToStack(array);
return 1;
}
from kaguya.
in member function, can i write like this?
.addStaticFunction("QueryTotalData", [](CCQLite3DB* pDB, char* pSQL, CCQLite3DBTable* pTable)->kaguya::CCQLite3DBTable_Warp { {
kaguya::CCQLite3DBTable_Warp ret;
if (!pDB->GetDataToTable(pSQL, pTable)) {
return ret;
}
ret.m_pTmpTable = pTable;
return ret;
}})
);
namespace kaguya {
class CCQLite3DBTable_Warp {
public:
CCQLite3DBTable_Warp() {
m_pTmpTable = nullptr;
}
virtual ~CCQLite3DBTable_Warp() {
}
public:
CCQLite3DBTable* m_pTmpTable;
};
template<> struct lua_type_traits<CCQLite3DBTable_Warp> {
typedef CCQLite3DBTable_Warp get_type;
typedef const CCQLite3DBTable_Warp& push_type;
static int push(lua_State* l, push_type sTmp) {
CCQLite3DBTable* s = (CCQLite3DBTable*)sTmp.m_pTmpTable;
if (s == nullptr)
lua_pushnil(l);
else {
int nRows = s->NumOfRows();
int nField = s->NumOfFields();
lua_newtable(l);
int array_index = lua_gettop(l);
for (int i = 0; i < nRows; i++) {
lua_newtable(l);
int result_index = lua_gettop(l);
for (int j = 0; j < nField; j++) {
s->SetRow(i);
lua_pushstring(l, s->NameOfField(j));
lua_pushstring(l, s->ValueOfField(j));
lua_settable(l, result_index);
}
lua_settop(l, result_index);
lua_rawseti(l, array_index, i + 1);
}
}
return 1;
}
};
}
from kaguya.
Related Issues (20)
- Kaguya does not work properly with dynamic libraries
- Generate kaguya.hpp and check your error! HOT 2
- request: custom allocator support
- Result of checkErrorAndThrow is ignored
- Possible to add overloaded constructors at runtime?
- How to register class static member function with default arguments? HOT 1
- An object is not automatically casted into a function parameter HOT 1
- error: type mismatch in diferent dynamic lib HOT 1
- Can't bind functor returned by std::bind HOT 1
- About class inheritance
- std::function and self HOT 3
- Check range of integral when converting from number
- how can I check function has timeout HOT 1
- Reject extra arguments to .new(), etc.
- Returning reference to class needs a copy constructor?
- can not assign a table from lua to a class member attribute
- Returning nil in multiple returns HOT 2
- get Current File/Line of Lua Code HOT 3
- How do I use a variable number of parameters HOT 2
- kaguya call lua HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from kaguya.