質問: lua_tofunction(L, -1); // こんな関数はありませんが、 // 何らかの方法でスタックトップのLua関数を変数fnに保存 } ``` C言語上でグローバル変数として保存したLua関数ポインタ(のようなもの?)fnに対して、 そのLua関数を次のように呼び出したいです。 ``` // 保存したLua関数fnを利用するC関数 void test(lua_State* L) { lua_pushfunction(L, fn); lua_pcall(L, ..., ..., ...); // Lua関数fooを呼び出すつもりだが、、、 : : : 何らかの処理 } ``` こんなことは可能でしょうか?
回答: それに関してはレジストリテーブルというものを使います https://qiita.com/isoparametric/items/2a3a336d83e216932813 イメージとしては、Luaのグローバル変数として保存しておく、という感じですね