(renderer) TreeBuilder: add ipairs/pairs utilities
Some checks failed
NeoVim tests / code-quality (push) Failing after 1m17s
Some checks failed
NeoVim tests / code-quality (push) Failing after 1m17s
This commit is contained in:
parent
fd69ebfaad
commit
933c187148
@ -526,6 +526,26 @@ function TreeBuilder:nest(fn)
|
||||
return self
|
||||
end
|
||||
|
||||
--- @param arr <T>[]
|
||||
--- @param f fun(tb: u.renderer.TreeBuilder, item: T, idx: number): any
|
||||
function TreeBuilder:ipairs(arr, f)
|
||||
return self:nest(function(tb)
|
||||
for idx, item in ipairs(arr) do
|
||||
f(tb, item, idx)
|
||||
end
|
||||
end)
|
||||
end
|
||||
|
||||
--- @param tab table
|
||||
--- @param f fun(tb: u.renderer.TreeBuilder, key: any, value: any): any
|
||||
function TreeBuilder:pairs(tab, f)
|
||||
return self:nest(function(tb)
|
||||
for k, v in pairs(tab) do
|
||||
f(tb, k, v)
|
||||
end
|
||||
end)
|
||||
end
|
||||
|
||||
--- @return u.renderer.Tree
|
||||
function TreeBuilder:tree() return self.nodes end
|
||||
-- }}}
|
||||
|
Loading…
x
Reference in New Issue
Block a user