summaryrefslogtreecommitdiffstats
path: root/tools/phosphor-logging
diff options
context:
space:
mode:
authorDeepak Kodihalli <dkodihal@in.ibm.com>2017-01-31 09:47:07 -0600
committerPatrick Williams <patrick@stwcx.xyz>2017-02-09 12:24:31 +0000
commit331ef90f04f0d79705170ea48204e01f5bff2681 (patch)
treeace2879b10ac9fe2c20d5c2406456d83751a4ae7 /tools/phosphor-logging
parentf542ba8271617afa73117a6a194572719760d734 (diff)
downloadphosphor-logging-331ef90f04f0d79705170ea48204e01f5bff2681.tar.gz
phosphor-logging-331ef90f04f0d79705170ea48204e01f5bff2681.zip
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 <dkodihal@in.ibm.com>
Diffstat (limited to 'tools/phosphor-logging')
-rw-r--r--tools/phosphor-logging/templates/elog-gen-template.mako.hpp10
1 files changed, 7 insertions, 3 deletions
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):
OpenPOWER on IntegriCloud