fix(diagnostic): improve validation for list arguments (#16855)

Function arguments that expect a list should explicitly use tbl_islist
rather than just checking for a table. This helps catch some simple
errors where a single table item is passed as an argument, which passes
validation (since it's a table), but causes other errors later on.
This commit is contained in:
Gregory Anders
2022-01-01 12:58:34 -07:00
committed by GitHub
parent 55c4393e9f
commit 838631e29e
3 changed files with 45 additions and 8 deletions

View File

@@ -592,7 +592,7 @@ do
-- Check user-provided validation function.
local valid, optional_message = types(val)
if not valid then
local error_message = string.format("%s: expected %s, got %s", param_name, (spec[3] or '?'), val)
local error_message = string.format("%s: expected %s, got %s", param_name, (spec[3] or '?'), tostring(val))
if optional_message ~= nil then
error_message = error_message .. string.format(". Info: %s", optional_message)
end