Write log level name to metadata comment if available
authorPhilippe Proulx <eeppeliteloop@gmail.com>
Wed, 16 Mar 2016 19:36:01 +0000 (15:36 -0400)
committerPhilippe Proulx <eeppeliteloop@gmail.com>
Fri, 18 Mar 2016 21:54:59 +0000 (17:54 -0400)
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
barectf/config.py
barectf/metadata.py
barectf/tsdl182gen.py

index 25d044e0894a2dd97eb806435bd6017dc8fdb7ed..114271fdb36b7700d52ecb9abcaed66adad0f70e 100644 (file)
@@ -2091,15 +2091,17 @@ class _YamlConfigParser:
             ll_node = event_node['log-level']
 
             if _is_str_prop(ll_node):
-                ll = self._lookup_log_level(event_node['log-level'])
+                ll_value = self._lookup_log_level(event_node['log-level'])
 
-                if ll is None:
+                if ll_value is None:
                     raise ConfigError('cannot find log level "{}"'.format(ll_node))
+
+                ll = metadata.LogLevel(event_node['log-level'], ll_value)
             elif _is_int_prop(ll_node):
                 if ll_node < 0:
                     raise ConfigError('invalid log level value {}: value must be positive'.format(ll_node))
 
-                ll = ll_node
+                ll = metadata.LogLevel(None, ll_node)
             else:
                 raise ConfigError('"log-level" property must be either a string or an integer')
 
index d225bdf0ee1d6bb8d3fcea99a55dfe2ec1ab679c..e37de04badfbed06aec1ce92e22cca46f7d5fa67 100644 (file)
@@ -528,6 +528,9 @@ class Clock:
         self._return_ctype = value
 
 
+LogLevel = collections.namedtuple('LogLevel', ['name', 'value'])
+
+
 class Event:
     def __init__(self):
         self._id = None
index 343b6929d394d44142154dc188486e42e08dea00..35a515ab6c1d68c4962c592eb880cd61ad3cc622 100644 (file)
@@ -298,7 +298,14 @@ def _gen_event_block(stream, ev, cg):
     cg.append_cc_to_last_line(stream.name.replace('/', ''))
 
     if ev.log_level is not None:
-        cg.add_line('loglevel = {};'.format(ev.log_level))
+        add_fmt = ''
+
+        if ev.log_level.name is not None:
+            name = ev.log_level.name.replace('*/', '')
+            add_fmt = ' /* {} */'.format(name)
+
+        fmt = 'loglevel = {};' + add_fmt
+        cg.add_line(fmt.format(ev.log_level.value))
 
     if ev.context_type is not None:
         _gen_entity('context', ev.context_type, cg)
This page took 0.029071 seconds and 4 git commands to generate.