mirror of
https://github.com/centau/vide.git
synced 2026-08-20 14:41:37 +00:00
This commit is contained in:
parent
fa2709f182
commit
6f9e86c5c7
3 changed files with 73 additions and 20 deletions
|
|
@ -135,11 +135,14 @@ BENCH("indexes() no change", function()
|
|||
return {}
|
||||
end)
|
||||
|
||||
state(state()) -- fill double buffer
|
||||
|
||||
START(N)
|
||||
|
||||
state(data)
|
||||
end)
|
||||
|
||||
-- todo: find out what is causing allocation
|
||||
BENCH("indexes() all change", function()
|
||||
local data = {}
|
||||
|
||||
|
|
@ -153,6 +156,8 @@ BENCH("indexes() all change", function()
|
|||
return {}
|
||||
end)
|
||||
|
||||
state(state()) -- fill double buffer
|
||||
|
||||
for i, v in data do
|
||||
data[i] = v + 1
|
||||
end
|
||||
|
|
@ -162,6 +167,26 @@ BENCH("indexes() all change", function()
|
|||
state(data)
|
||||
end)
|
||||
|
||||
BENCH("indexes() all remove", function()
|
||||
local data = {}
|
||||
|
||||
for i = 1, N do
|
||||
data[i] = i
|
||||
end
|
||||
|
||||
local state = vide.source(data)
|
||||
|
||||
local _list = vide.values(state, function(v, i)
|
||||
return {}
|
||||
end)
|
||||
|
||||
table.clear(data)
|
||||
|
||||
START(N)
|
||||
|
||||
state(data)
|
||||
end)
|
||||
|
||||
BENCH("values() no change", function()
|
||||
local data = {}
|
||||
|
||||
|
|
@ -175,6 +200,8 @@ BENCH("values() no change", function()
|
|||
return {}
|
||||
end)
|
||||
|
||||
state(state()) -- fill double buffer
|
||||
|
||||
START(N)
|
||||
|
||||
state(data)
|
||||
|
|
@ -193,6 +220,8 @@ BENCH("values() all change", function()
|
|||
return {}
|
||||
end)
|
||||
|
||||
state(state()) -- fill double buffer
|
||||
|
||||
for i = 1, N do
|
||||
local r = math.random(1, #data)
|
||||
data[i], data[r] = data[r], data[i]
|
||||
|
|
@ -203,4 +232,24 @@ BENCH("values() all change", function()
|
|||
state(data)
|
||||
end)
|
||||
|
||||
BENCH("values() all remove", function()
|
||||
local data = {}
|
||||
|
||||
for i = 1, N do
|
||||
data[i] = {}
|
||||
end
|
||||
|
||||
local state = vide.source(data)
|
||||
|
||||
local _list = vide.values(state, function(v, i)
|
||||
return {}
|
||||
end)
|
||||
|
||||
table.clear(data)
|
||||
|
||||
START(N)
|
||||
|
||||
state(data)
|
||||
end)
|
||||
|
||||
return nil
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue