Make config option "gen-default-stream-def" a boolean
authorPhilippe Proulx <eeppeliteloop@gmail.com>
Thu, 7 Apr 2016 01:37:10 +0000 (21:37 -0400)
committerPhilippe Proulx <eeppeliteloop@gmail.com>
Thu, 7 Apr 2016 01:37:10 +0000 (21:37 -0400)
Now that there's a way to specify a default stream, we only
need to know if we want or not to generate this definition.

Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
barectf/config.py
barectf/gen.py
barectf/templates.py

index c4b50699896794b19a13c544ce88bb43cb80d101..07f501a0d642707520068a7707617bff90dcb7be 100644 (file)
@@ -115,11 +115,6 @@ class Config:
 
     @options.setter
     def options(self, options):
-        if options.gen_default_stream_def:
-            if options.gen_default_stream_def not in self._metadata.streams.keys():
-                fmt = 'invalid configuration option "gen-default-stream-def": stream "{}" does not exist'
-                raise ConfigError(fmt.format(options.gen_default_stream_def))
-
         self._options = options
 
 
@@ -2484,8 +2479,8 @@ class _YamlConfigParser:
         if 'gen-default-stream-def' in options_node and options_node['gen-default-stream-def'] is not None:
             gen_default_stream_def_node = options_node['gen-default-stream-def']
 
-            if not _is_str_prop(gen_default_stream_def_node):
-                raise ConfigError('invalid configuration option "gen-default-stream-def": expecting a string')
+            if not _is_bool_prop(gen_default_stream_def_node):
+                raise ConfigError('invalid configuration option "gen-default-stream-def": expecting a boolean')
 
             cfg_options.gen_default_stream_def = gen_default_stream_def_node
 
index 4b9bb9d64911927fd853887e6f53386a20d51180..a4d87ecadf0801b990fbbeec26d849ff1b99694c 100644 (file)
@@ -349,9 +349,8 @@ class CCodeGenerator:
         if self._cfg.options.gen_prefix_def:
             prefix_def = '#define _BARECTF_PREFIX {}'.format(self._cfg.prefix)
 
-        if self._cfg.options.gen_default_stream_def:
-            s_name = self._cfg.options.gen_default_stream_def
-            default_stream_def = '#define _BARECTF_DEFAULT_STREAM {}'.format(s_name)
+        if self._cfg.options.gen_default_stream_def and self._cfg.metadata.default_stream_name is not None:
+            default_stream_def = '#define _BARECTF_DEFAULT_STREAM {}'.format(self._cfg.metadata.default_stream_name)
 
         default_stream_trace_defs = ''
         default_stream_name = self._cfg.metadata.default_stream_name
index 52296684c50e172da741d29913373be4f7cb0601..cd7899e44252782582b5b879583291440ee1e000 100644 (file)
@@ -241,6 +241,7 @@ _HEADER_BEGIN = '''#ifndef _{ucprefix}H
 
 {prefix_def}
 {default_stream_def}
+
 {default_stream_trace_defs}
 
 struct {prefix}ctx;
This page took 0.026942 seconds and 4 git commands to generate.