Optional parameters: Difference between revisions

m
(Added Lua program)
Line 1,416:
=={{header|Lua}}==
<lang Lua>
function table2stringshowTable(tbl)
if type(tbl)=='table' then
local result = '{'}
for _, val in pairs(tbl) do
iffor _, type(val) ==in 'table'pairs(tbl) thendo
table.insert(result, = result .. table2stringshowTable(val) .. ' ')
else
result = result .. val .. ' '
end
return '{' .. table.concat(result, ', ') .. '}'
else
return (tostring(tbl))
end
result = result .. '}'
return result
end
 
Line 1,444 ⟶ 1,443:
{"dalmation", "bear", "fox"},
{"ant", "cougar", "coyote"}}
print('original', table2stringshowTable(A))
 
sortTable{table=A}
print('defaults', table2stringshowTable(A))
 
sortTable{table=A, column=2}
print('col 2 ', table2stringshowTable(A))
 
sortTable{table=A, column=3}
print('col 3 ', table2stringshowTable(A))
 
sortTable{table=A, column=3, reverse=true}
print('col 3 rev', table2stringshowTable(A))
 
sortTable{table=A, cmp=(function (a, b) return #a < #b end)}
print('by length', table2stringshowTable(A))
</lang>
{{out}}
<pre>
original {{quail, deer, snake }, {dalmation, bear, fox }, {ant, cougar, coyote } }
defaults {{ant, cougar, coyote }, {dalmation, bear, fox }, {quail, deer, snake } }
col 2 {{dalmation, bear, fox }, {ant, cougar, coyote }, {quail, deer, snake } }
col 3 {{ant, cougar, coyote }, {dalmation, bear, fox }, {quail, deer, snake } }
col 3 rev {{quail, deer, snake }, {dalmation, bear, fox }, {ant, cougar, coyote } }
by length {{ant, cougar, coyote }, {quail, deer, snake }, {dalmation, bear, fox } }
</pre>
 
27

edits