mirror of https://github.com/folke/lazy.nvim.git
Revert "feat(util): opts merging now supports lists extending by tagging a table with __extend = true. Use with care"
This reverts commit 74fd3611f2
.
This commit is contained in:
parent
74fd3611f2
commit
89ddc59d19
|
@ -387,10 +387,6 @@ local function can_merge(v)
|
|||
return type(v) == "table" and (vim.tbl_isempty(v) or not M.is_list(v))
|
||||
end
|
||||
|
||||
local function can_extend(v)
|
||||
return type(v) == "table" and v.__extend
|
||||
end
|
||||
|
||||
--- Merges the values similar to vim.tbl_deep_extend with the **force** behavior,
|
||||
--- but the values can be any type, in which case they override the values on the left.
|
||||
--- Values will me merged in-place in the first left-most table. If you want the result to be in
|
||||
|
@ -406,15 +402,7 @@ function M.merge(...)
|
|||
end
|
||||
for i = 2, select("#", ...) do
|
||||
local value = select(i, ...)
|
||||
local are_t = type(ret) == "table" and type(value) == "table"
|
||||
if are_t and (can_extend(ret) or can_extend(value)) then
|
||||
for k, v in pairs(value) do
|
||||
if k ~= "__extend" then
|
||||
table.insert(ret, v)
|
||||
end
|
||||
end
|
||||
ret.__extend = true
|
||||
elseif are_t and can_merge(ret) and can_merge(value) then
|
||||
if can_merge(ret) and can_merge(value) then
|
||||
for k, v in pairs(value) do
|
||||
ret[k] = M.merge(ret[k], v)
|
||||
end
|
||||
|
|
|
@ -134,18 +134,6 @@ describe("util", function()
|
|||
input = { { a = 1 }, { b = 2, a = vim.NIL } },
|
||||
output = { b = 2 },
|
||||
},
|
||||
{
|
||||
input = { { 1, 2, __extend = true }, { 3, 4 } },
|
||||
output = { 1, 2, 3, 4, __extend = true },
|
||||
},
|
||||
{
|
||||
input = { { 1, 2, __extend = true }, { __extend = true, 3, 4 } },
|
||||
output = { 1, 2, 3, 4, __extend = true },
|
||||
},
|
||||
{
|
||||
input = { { 1, 2 }, { 3, 4, __extend = true } },
|
||||
output = { 1, 2, 3, 4, __extend = true },
|
||||
},
|
||||
}
|
||||
|
||||
for _, test in ipairs(tests) do
|
||||
|
|
Loading…
Reference in New Issue