如何将表参数传递给使用load创建的函数?

时间:2016-11-16 14:21:05

标签: lua load

不使用加载,我会有这个来源:

function dosearch(t)
   t:search()
end

并用

调用它
dosearch(my_search_t)

但是,我想使用load来评估一个包含上面代码的字符串。

codestr = "t:search()"
searchfunc = load(codestr)

最后称之为:

function callsearch(t)
  -- How to use debug.setupvalue to pass t?
 searchfunc()
end

如何使用debug.setupvalue传递t?

1 个答案:

答案 0 :(得分:2)

function dosearch(t)
   t:search()
end

相当于

dosearch = load [[
  local t = ...
  t:search()
]]