Модуль:GetField: различия между версиями

Нет описания правки
Нет описания правки
Строка 216: Строка 216:


return nil
return nil
end
local function resolve_entry_path_value(data, id, parsedPath)
if type(data) ~= "table" or not parsedPath or not id or id == "" then
return nil
end
local entry = resolve_entry(data, id)
if type(entry) ~= "table" then
return nil
end
return get_by_parsed_path(entry, parsedPath)
end
end


Строка 736: Строка 749:
matches = {}
matches = {}
for _, idKey in ipairs(ids) do
for _, idKey in ipairs(ids) do
local v = resolve_path_value(data, idKey, parsedPath)
local v = resolve_entry_path_value(data, idKey, parsedPath)
if is_nonempty_value(v) then
if is_nonempty_value(v) then
matches[#matches + 1] = idKey
matches[#matches + 1] = idKey