lua-language-server
lua-language-server copied to clipboard
Exact classes can have fields injected when used as parameters to funcitons
Love the new exact class! When using it though, I noticed that I could still 'inject' fields into an exact class when it is used as the input to a function. Example:
---@class (exact) TestClass
---@field public a number
---@field public b string
---@field public c boolean
---@param test_param TestClass
local function test(test_param)
end
test({a = 1, b = "2", c = true, d = 4})
causes no error.
I am not sure if this is intended or not, but I would expect to get an warning like: Fields cannot be injected into the reference of `TestClass` for `d`. To do so, use `---@class` for `test_param`.Lua Diagnostics.(inject-field)
here.