Module:LuaCall: Difference between revisions
From Test Wiki
Content deleted Content added
+call(s, args, ret) |
+frame.return |
||
| Line 81: | Line 81: | ||
end |
end |
||
function call(s, args, ret) |
local function call(s, args, ret) |
||
if ret then |
if ret then |
||
return ({get(s)(unpack(args))})[ret] |
return ({get(s)(unpack(args))})[ret] |
||
| Line 113: | Line 113: | ||
--]] |
--]] |
||
function p.call(frame) |
function p.call(frame) |
||
| ⚫ | |||
| ⚫ | |||
| ⚫ | |||
| ⚫ | |||
frame['return'] |
|||
| ⚫ | |||
) |
|||
end |
end |
||
| Line 127: | Line 127: | ||
--]] |
--]] |
||
function p.call_n(frame) |
function p.call_n(frame) |
||
return |
return call(frame.args[1], |
||
pairs2ArrayWithFunc(tonumber, ipairsAtOffset(frame.args, 1)), |
|||
frame['return'] |
|||
) |
|||
end |
end |
||
| Line 141: | Line 142: | ||
function p.call_s(frame) |
function p.call_s(frame) |
||
-- unpack() not work on metatable |
-- unpack() not work on metatable |
||
| ⚫ | |||
--return (get(frame.args[1])(unpack(frame.args, 2))) |
--return (get(frame.args[1])(unpack(frame.args, 2))) |
||
return |
return call(frame.args[1], |
||
pairs2Array(ipairsAtOffset(frame.args, 1)), |
|||
frame['return'] |
|||
) |
|||
end |
end |
||