From 88445d0d3511528ddddb5eb2c37a7739edff534b Mon Sep 17 00:00:00 2001 From: Sean Nowlan <nowlans@ieee.org> Date: Thu, 2 Feb 2017 14:15:39 -0500 Subject: grc: evaluate cheetah template to resolve 'optional' tag in port definition --- grc/core/Port.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'grc/core/Port.py') diff --git a/grc/core/Port.py b/grc/core/Port.py index f740a69809..acf4eea3d4 100644 --- a/grc/core/Port.py +++ b/grc/core/Port.py @@ -168,7 +168,8 @@ class Port(Element): self._nports = n.find('nports') or '' self._vlen = n.find('vlen') or '' - self._optional = bool(n.find('optional')) + self._optional = n.find('optional') or '' + self._optional_evaluated = False # Updated on rewrite() self._clones = [] # References to cloned ports (for nports > 1) def __str__(self): @@ -208,6 +209,8 @@ class Port(Element): hide = self.get_parent().resolve_dependencies(self._hide).strip().lower() self._hide_evaluated = False if hide in ('false', 'off', '0') else bool(hide) + optional = self.get_parent().resolve_dependencies(self._optional).strip().lower() + self._optional_evaluated = False if optional in ('false', 'off', '0') else bool(optional) # Update domain if was deduced from (dynamic) port type type_ = self.get_type() @@ -272,7 +275,7 @@ class Port(Element): return 1 def get_optional(self): - return bool(self._optional) + return self._optional_evaluated def get_color(self): """ -- cgit v1.2.3