Skip to content

luaL_register

新しいライブラリを登録します。

[-(0|1), +1, m]

c
void luaL_register (lua_State *L, const char *libname, const luaL_Reg *l);

説明

ライブラリをオープンします。

libnameNULLに等しい場合、単にリストl内のすべての関数(luaL_Regを参照)をスタックのトップにあるテーブルに登録します。

libnameが非nullで呼び出された場合、luaL_registerは新しいテーブルtを作成し、グローバル変数libnameの値として設定し、package.loaded[libname]の値として設定し、リストlのすべての関数をそれに登録します。package.loaded[libname]や変数libnameにテーブルがある場合は、新しいテーブルを作成する代わりにこのテーブルを再利用します。

いずれの場合も、関数はテーブルをスタックのトップに残します。

サンプルコード

c
luaL_register(L, "mylib", mylib);

このコードは、ライブラリmylibを登録し、関数をLuaに公開します。

互換性

  • Lua5.1

関連項目

  • luaL_Reg
  • luaL_openlibs