mirror of
https://github.com/TangentFoxy/lume.git
synced 2024-11-19 07:04:24 +00:00
Added lume.call(), updated tests and README
This commit is contained in:
parent
4373a202dc
commit
b873c043c5
@ -244,6 +244,14 @@ local f = lume.combine(function(a, b) print(a + b) end,
|
||||
f(3, 4) -- Prints "7" then "12" on a new line
|
||||
```
|
||||
|
||||
### lume.call(fn, ...)
|
||||
Calls the given function with the provided arguments and returns its value. If
|
||||
`fn` is nil then no action is performed and the function returns nil.
|
||||
```lua
|
||||
_.call(print, "Hello world") -- Prints "Hello world"
|
||||
```
|
||||
|
||||
|
||||
### lume.time(fn, ...)
|
||||
Inserts the arguments into function `fn` and calls it. Returns the time in
|
||||
seconds the function `fn` took to execute followed by `fn`'s returned values.
|
||||
|
7
lume.lua
7
lume.lua
@ -377,6 +377,13 @@ function lume.combine(...)
|
||||
end
|
||||
|
||||
|
||||
function lume.call(fn, ...)
|
||||
if fn then
|
||||
return fn(...)
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
function lume.time(fn, ...)
|
||||
local start = os.clock()
|
||||
local rtn = {fn(...)}
|
||||
|
@ -351,6 +351,14 @@ tests["lume.combine"] = function()
|
||||
testeq( acc, 230 )
|
||||
end
|
||||
|
||||
-- lume.call
|
||||
tests["lume.call"] = function()
|
||||
local add = function(a, b) return a + b end
|
||||
testeq( lume.call(), nil )
|
||||
testeq( lume.call(nil, 1, 2, 3), nil )
|
||||
testeq( lume.call(add, 1, 2), 3 )
|
||||
end
|
||||
|
||||
-- lume.time
|
||||
tests["lume.time"] = function()
|
||||
local t, a, b, c = lume.time(function(x) return 50, 60, x end, 70)
|
||||
|
Loading…
Reference in New Issue
Block a user