From 331ef90f04f0d79705170ea48204e01f5bff2681 Mon Sep 17 00:00:00 2001 From: Deepak Kodihalli Date: Tue, 31 Jan 2017 09:47:07 -0600 Subject: elog-gen.py : alias inherited metadata Alias metadata inherited from parent errors such that users don't have to explicitly know which parent provides the metadata : using metaName = ParentError::metaName Change-Id: Idd285766b9f831d19391f46cee1ed2ff320b2c30 Signed-off-by: Deepak Kodihalli --- tools/phosphor-logging/templates/elog-gen-template.mako.hpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'tools/phosphor-logging') diff --git a/tools/phosphor-logging/templates/elog-gen-template.mako.hpp b/tools/phosphor-logging/templates/elog-gen-template.mako.hpp index e39deea..b0dec60 100644 --- a/tools/phosphor-logging/templates/elog-gen-template.mako.hpp +++ b/tools/phosphor-logging/templates/elog-gen-template.mako.hpp @@ -44,12 +44,13 @@ struct ${b} } // namespace _${classname} <% meta_string = ', '.join(meta[name]) + parent_meta = [] parent = parents[name] while parent: - parent_meta = [parent + "::" + p for p in meta[parent]] - parent_meta = ', '.join(parent_meta) - meta_string = meta_string + ", " + parent_meta + parent_meta += [parent + "::" + p for p in meta[parent]] + parent_meta_short = ', '.join(meta[parent]) + meta_string = meta_string + ", " + parent_meta_short parent = parents[parent] %> struct ${classname} @@ -60,6 +61,9 @@ struct ${classname} % for b in meta[name]: using ${b} = _${classname}::${b}; % endfor + % for b in parent_meta: + using ${b.split("::").pop()} = ${b}; + % endfor using metadata_types = std::tuple<${meta_string}>; }; % for s in reversed(namespaces): -- cgit v1.2.1