// automatically generated by luatablegen #include "../lua-5.3.4/src/lua.h" #include "../lua-5.3.4/src/lauxlib.h" #include "../lua-5.3.4/src/lualib.h" #include #include #ifndef _W_Data_Segment_H #define _W_Data_Segment_H #ifdef __cplusplus extern "C" { #endif #include "./W_Data_Segment_tablegen.h" #include "../wasm.h" static W_Data_Segment* convert_W_Data_Segment (lua_State* __ls, int index) { W_Data_Segment* dummy = (W_Data_Segment*)lua_touserdata(__ls, index); if (dummy == NULL) printf("W_Data_Segment:bad user data type.\n"); return dummy; } static W_Data_Segment* check_W_Data_Segment(lua_State* __ls, int index) { W_Data_Segment* dummy; luaL_checktype(__ls, index, LUA_TUSERDATA); dummy = (W_Data_Segment*)luaL_checkudata(__ls, index, "W_Data_Segment"); if (dummy == NULL) printf("W_Data_Segment:bad user data type.\n"); return dummy; } W_Data_Segment* push_W_Data_Segment(lua_State* __ls) { lua_checkstack(__ls, 1); W_Data_Segment* dummy = lua_newuserdata(__ls, sizeof(W_Data_Segment)); luaL_getmetatable(__ls, "W_Data_Segment"); lua_setmetatable(__ls, -2); return dummy; } int W_Data_Segment_push_args(lua_State* __ls, W_Data_Segment* _st) { lua_checkstack(__ls, 4); lua_pushinteger(__ls, _st->index); lua_pushlightuserdata(__ls, _st->offset); lua_pushinteger(__ls, _st->size); lua_pushstring(__ls, _st->data); return 0; } int new_W_Data_Segment(lua_State* __ls) { lua_checkstack(__ls, 4); varuint32 index = luaL_optinteger(__ls,-4,0); init_expr_t* offset = lua_touserdata(__ls,-3); varuint32 size = luaL_optinteger(__ls,-2,0); char* data = lua_tostring(__ls,-1); W_Data_Segment* dummy = push_W_Data_Segment(__ls); dummy->index = index; dummy->offset = offset; dummy->size = size; dummy->data = data; return 1; } static int getter_W_Data_Segment_index(lua_State* __ls) { W_Data_Segment* dummy = check_W_Data_Segment(__ls, 1); lua_pop(__ls, -1); lua_pushinteger(__ls, dummy->index); return 1; } static int getter_W_Data_Segment_offset(lua_State* __ls) { W_Data_Segment* dummy = check_W_Data_Segment(__ls, 1); lua_pop(__ls, -1); lua_pushlightuserdata(__ls, dummy->offset); return 1; } static int getter_W_Data_Segment_size(lua_State* __ls) { W_Data_Segment* dummy = check_W_Data_Segment(__ls, 1); lua_pop(__ls, -1); lua_pushinteger(__ls, dummy->size); return 1; } static int getter_W_Data_Segment_data(lua_State* __ls) { W_Data_Segment* dummy = check_W_Data_Segment(__ls, 1); lua_pop(__ls, -1); lua_pushstring(__ls, dummy->data); return 1; } static int setter_W_Data_Segment_index(lua_State* __ls) { W_Data_Segment* dummy = check_W_Data_Segment(__ls, 1); dummy->index = luaL_checkinteger(__ls, 2); lua_settop(__ls, 1); return 1; } static int setter_W_Data_Segment_offset(lua_State* __ls) { W_Data_Segment* dummy = check_W_Data_Segment(__ls, 1); dummy->offset = luaL_checkudata(__ls, 2, "W_Data_Segment"); lua_settop(__ls, 1); return 1; } static int setter_W_Data_Segment_size(lua_State* __ls) { W_Data_Segment* dummy = check_W_Data_Segment(__ls, 1); dummy->size = luaL_checkinteger(__ls, 2); lua_settop(__ls, 1); return 1; } static int setter_W_Data_Segment_data(lua_State* __ls) { W_Data_Segment* dummy = check_W_Data_Segment(__ls, 1); dummy->data = luaL_checkstring(__ls, 2); lua_settop(__ls, 1); return 1; } static const luaL_Reg W_Data_Segment_methods[] = { {"new", new_W_Data_Segment}, {"set_index", setter_W_Data_Segment_index}, {"set_offset", setter_W_Data_Segment_offset}, {"set_size", setter_W_Data_Segment_size}, {"set_data", setter_W_Data_Segment_data}, {"index", getter_W_Data_Segment_index}, {"offset", getter_W_Data_Segment_offset}, {"size", getter_W_Data_Segment_size}, {"data", getter_W_Data_Segment_data}, {0,0} }; static const luaL_Reg W_Data_Segment_meta[] = { {0, 0} }; int W_Data_Segment_register(lua_State* __ls) { luaL_openlib(__ls, "W_Data_Segment", W_Data_Segment_methods, 0); luaL_newmetatable(__ls, "W_Data_Segment"); luaL_openlib(__ls, 0, W_Data_Segment_meta, 0); lua_pushliteral(__ls, "__index"); lua_pushvalue(__ls, -3); lua_rawset(__ls, -3); lua_pushliteral(__ls, "__metatable"); lua_pushvalue(__ls, -3); lua_rawset(__ls, -3); lua_pop(__ls, 1); return 1; } #ifdef __cplusplus } #endif //end of extern c #endif //end of inclusion guard