Remove misc.readonly

Fix #571
This commit is contained in:
hrsh7th
2021-11-23 23:22:22 +09:00
parent 6fa7681812
commit ac476e05df
3 changed files with 2 additions and 23 deletions

View File

@@ -195,7 +195,7 @@ source.get_trigger_characters = function(self)
local trigger_characters = {} local trigger_characters = {}
if self.source.get_trigger_characters then if self.source.get_trigger_characters then
trigger_characters = self.source:get_trigger_characters(misc.readonly(self:get_config())) or {} trigger_characters = self.source:get_trigger_characters(misc.copy(c)) or {}
end end
if config.get().completion.get_trigger_characters then if config.get().completion.get_trigger_characters then
return config.get().completion.get_trigger_characters(trigger_characters) return config.get().completion.get_trigger_characters(trigger_characters)
@@ -211,7 +211,7 @@ source.get_keyword_pattern = function(self)
return c.keyword_pattern return c.keyword_pattern
end end
if self.source.get_keyword_pattern then if self.source.get_keyword_pattern then
return self.source:get_keyword_pattern(misc.readonly(c)) return self.source:get_keyword_pattern(misc.copy(c))
end end
return config.get().completion.keyword_pattern return config.get().completion.keyword_pattern
end end

View File

@@ -168,19 +168,6 @@ misc.to_vimindex = function(text, utfindex)
return utfindex + 1 return utfindex + 1
end end
---Return readonly version object
---@generic T
---@param tbl T
---@return T
misc.readonly = function(tbl)
return setmetatable({}, {
__index = tbl,
__newindex = function()
error('this table is readonly.')
end,
})
end
---Mark the function as deprecated ---Mark the function as deprecated
misc.deprecated = function(fn, msg) misc.deprecated = function(fn, msg)
local printed = false local printed = false

View File

@@ -49,12 +49,4 @@ describe('misc', function()
assert.are.equal(merged.a, nil) assert.are.equal(merged.a, nil)
end) end)
it('readonly', function()
local o = { a = 1, b = 2 }
local r = misc.readonly(o)
assert.are.equal(r.a, 1)
assert.has_error(function()
r.a = 5
end)
end)
end) end)