我正在尝试从其他应用程序的脚本中模拟某些功能的执行。该应用程序具有包含函数的 Lua 库list()
,它返回表,其中键是字符串 UUID,值只是字符串,例如local tbl = { "0000..-0000-..." = "someString", etc... }
. 该表可以在 for 循环中迭代,例如
local lib = require("someLibrary.lua");
for key, value in lib.list() do
-- do something with keys and values, like print
end
-- or it can be used like this
local tbl = lib.list();
for key, value in tbl do -- tbl works as pairs(tbl) and works exactly how code on top
-- do something with keys and values, like print
end
那么问题来了,我如何实现 __call 元方法以作为 pair() 或 next() 等工作?
谢谢