diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2021-09-09 10:43:06 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2021-09-14 14:32:42 +0200 |
commit | 2d4c4a235e9c630b415f60e26ff35cee3582a0ef (patch) | |
tree | 828f2288e4b56ef47b65ee2680c82053014545ca | |
parent | spec: Document the cache manager (diff) | |
download | rtems-central-2d4c4a235e9c630b415f60e26ff35cee3582a0ef.tar.bz2 |
transitionmap: Fix pre-condition summary
-rw-r--r-- | rtemsspec/transitionmap.py | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/rtemsspec/transitionmap.py b/rtemsspec/transitionmap.py index 703395cb..7801ad43 100644 --- a/rtemsspec/transitionmap.py +++ b/rtemsspec/transitionmap.py @@ -467,6 +467,11 @@ class TransitionMap: variant = self._map_post_cond(map_idx, co_idx, variant) return variant + def _update_pre_co_summary(self, variant: Transition) -> None: + self.pre_co_summary = tuple( + a + b for a, b in zip(self.pre_co_summary, (variant.skip, ) + + variant.pre_cond_na)) + def _add_variant(self, transition_map: _TransitionMap, map_idx: int, variant: Transition) -> None: if transition_map[map_idx]: @@ -479,6 +484,7 @@ class TransitionMap: # some pre-conditions. It makes it also easier to skip # pre-conditon states which are controlled by build # options. + self._update_pre_co_summary(variant) transition_map[map_idx].replace(index, variant) return raise ValueError( @@ -499,9 +505,7 @@ class TransitionMap: f"{self._item.spec} is the first variant for " f"{{{self._map_index_to_pre_conditions(map_idx)}}} " "and it is not enabled by default") - self.pre_co_summary = tuple( - a + b for a, b in zip(self.pre_co_summary, (variant.skip, ) + - variant.pre_cond_na)) + self._update_pre_co_summary(variant) transition_map[map_idx].add(variant) def _add_transitions(self, transition_map: _TransitionMap, |