Skip to content

Commit

Permalink
lib.yang.path_data: add grammar_for_schema_by_name
Browse files Browse the repository at this point in the history
  • Loading branch information
eugeneia committed Nov 11, 2022
1 parent 231381d commit 34c4324
Showing 1 changed file with 17 additions and 0 deletions.
17 changes: 17 additions & 0 deletions src/lib/yang/path_data.lua
Expand Up @@ -87,6 +87,23 @@ end

resolver = util.memoize(resolver)

local function grammar_for_schema(schema, path, is_config)
local grammar = data.data_grammar_from_schema(schema, is_config ~= false)
local path = parse_path(path or '/', grammar)
if #path > 0 then
return path[#path].grammar
else
return grammar
end
end

function grammar_for_schema_by_name(schema_name, path, is_config)
local schema = schema.load_schema_by_name(schema_name)
return grammar_for_schema(schema, path, is_config)
end

grammar_for_schema_by_name = util.memoize(grammar_for_schema_by_name)

local function printer_for_grammar(grammar, path, format, print_default)
local getter, subgrammar = resolver(grammar, path)
local printer
Expand Down

0 comments on commit 34c4324

Please sign in to comment.