Я пишу функции C для Lua.
У меня много вызовов, таких как lua_gettable, lua_touserdata и т. Д.
Моя функция C может принимать сложные структуры, такие как таблица с таблицами в виде полей.
Мне сложно запрограммировать сложенную машину.
Есть ли способ написать скрипт Lua, который будет конвертирован в код на Си.
Или некоторые другие инструменты, которые могут помочь мне кодировать такие функции языка Си для сценариев lua.
Спасибо.
PS
Вот пример: -
local data = {}
data.x = {}
data.x.y = 1
myCfunc(data)
int myCfunc(lua_State * L){
lua_pushstring(L, "x");
lua_gettable(L, 2);
lua_pushstring(L, "y");
lua_gettable(L, -2);
double y = lua_tonumber(L, -1);
lua_pop(L, 2);
}
вместо
function myCfunc(data)
y = data.x.y
end
Мой настоящий код намного сложнее, и я ищу некоторые
автоматическая генерация кода, которая мне поможет.