Модуль:GetField: различия между версиями
Pok (обсуждение | вклад) Нет описания правки |
Pok (обсуждение | вклад) Нет описания правки |
||
| Строка 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 = | 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 | ||