Skip to content

debug.setfenv

関数やスレッドに環境テーブルを設定する

lua
debug.setfenv (object, table)

説明

オブジェクトobjectの環境テーブルをtableに設定します。objectには関数やスレッドを指定できます。

サンプルコード

lua
local function test() print(a) end
debug.setfenv(test, {a = 42})
test()  -- 42が表示される

この例では、関数testの環境を設定して、その中で変数aが使用されます。

LuaJIT独自の拡張

メタメソッドを識別する。

互換性

  • Lua 5.1
  • LuaJIT

関連項目