Refactor table library to match lua 5.2

This commit is contained in:
James Roseborough
2012-09-10 04:59:45 +00:00
parent 6ba1f86b7b
commit f8b7e1ee1c
9 changed files with 125 additions and 74 deletions

View File

@@ -114,7 +114,7 @@ local function split(t)
end
local function expand(argsets, typesets, ...)
local arg = {...} ; arg.n = #arg
local arg = table.pack(...)
local n = typesets and #typesets or 0
if n <= 0 then
table.insert(argsets,arg)

View File

@@ -133,10 +133,10 @@ testbothpairs(t)
-- length is tested elsewhere
print('----- unpack tests -------')
local unpack = table.unpack
print( 'pcall(unpack)', pcall(unpack) );
print( 'pcall(unpack,nil)', pcall(unpack,nil) );
print( 'pcall(unpack,"abc")', pcall(unpack,"abc") );
print( 'pcall(unpack,1)', pcall(unpack,1) );
print( 'pcall(unpack)', (pcall(unpack)) );
print( 'pcall(unpack,nil)', (pcall(unpack,nil)) );
print( 'pcall(unpack,"abc")', (pcall(unpack,"abc")) );
print( 'pcall(unpack,1)', (pcall(unpack,1)) );
print( 'unpack({"aa"})', unpack({"aa"}) );
print( 'unpack({"aa","bb"})', unpack({"aa","bb"}) );
print( 'unpack({"aa","bb","cc"})', unpack({"aa","bb","cc"}) );
@@ -203,8 +203,8 @@ print( 'pcall(unpack,t,0)', pcall(unpack,t,0) );
print( 'pcall(unpack,t,2,0)', pcall(unpack,t,2,0) );
print( 'pcall(unpack,t,2,-1)', pcall(unpack,t,2,-1) );
print( 'pcall(unpack,t,"3")', pcall(unpack,t,"3") );
print( 'pcall(unpack,t,"a")', pcall(unpack,t,"a") );
print( 'pcall(unpack,t,function() end)', pcall(unpack,t,function() end) );
print( 'pcall(unpack,t,"a")', (pcall(unpack,t,"a")) );
print( 'pcall(unpack,t,function() end)', (pcall(unpack,t,function() end)) );
-- misc tests
print('----- misc table initializer tests -------')