Module:LuaCall: Difference between revisions

From Test Wiki
Content deleted Content added
call_s
call_s()
Line 46: Line 46:
for _, v in ... do
for _, v in ... do
table.insert(args, tonumberOrString(v))
table.insert(args, tonumberOrString(v))
end
return (f(unpack(args)))
end

local function callWithPairs(f, ...)
local args = {}
for _, v in ... do
table.insert(args, v)
end
end
return (f(unpack(args)))
return (f(unpack(args)))
Line 111: Line 119:
--]]
--]]
function p.call_s(frame)
function p.call_s(frame)
-- unpack() not work on metatable
return get(frame.args[1])(unpack(frame.args, 2))
--return get(frame.args[1])(unpack(frame.args, 2))
return callWithPairs(get(frame.args[1]),
ipairsAtOffset(frame.args, 1)
)
end
end