bind()
クロージャーを作成するために Javascript で広く使用されている Luaに実装したいと考えています。
以下のコードは、引数が 1 つの場合のデモです。
function bind(func, arg1)
return function (...)
return func(arg1, ...)
end
end
local x = { data = 1 }
function x.print(self)
print self.data
end
outputX = bind(x.print, x)
outputX() -- print 1
私の質問は次のとおりです。任意の数のバインド引数をサポートするにはどうすればよいですか?