Skip to content

luaL_setfuncs

テーブルに関数を登録し、オプションでアップバリューを設定します。

c
void luaL_setfuncs (lua_State *L, const luaL_Reg *l, int nup);

説明

配列lluaL_Reg参照)内のすべての関数をスタックのトップにあるテーブルに登録します(オプションのアップバリューの下に配置します。次を参照)。

nupがゼロでない場合、すべての関数はnup個のアップバリューを共有して作成され、それらの値はライブラリテーブルの上にスタックに事前にプッシュされる必要があります。登録後、これらの値はスタックからポップされます。

サンプルコード

c
luaL_Reg funcs[] = {
    {"hello", hello_function},
    {NULL, NULL}
};
lua_newtable(L);  // 新しいテーブルを作成
luaL_setfuncs(L, funcs, 0);

このコードは、新しいテーブルを作成し、関数hello_functionを登録します。

互換性

  • Lua5.2

関連項目

  • luaL_newlib
  • luaL_newlibtable