aboutsummaryrefslogtreecommitdiff
path: root/wa/utils
diff options
context:
space:
mode:
authorsergei Trofimov <sergei.trofimov@arm.com>2018-04-27 14:07:19 +0100
committerMarc Bonnici <marc.bonnici@arm.com>2018-05-08 10:50:48 +0100
commit9093477f1ba63372f77905214700abeb2561a9c6 (patch)
treef8d2d93d8fd747956e8f53dbe6e0dc4bf8f52549 /wa/utils
parent5b03ac3afdd6f51c842b1369bd8389aa0e683ec3 (diff)
utils/types: fix toggle_set merge methods
- The merge_with and merge_into implementation was reversed. Fix this, so that it is implemented correctly, i.e. that a.merge_with(b) === merge(a, b) a.merge_into(b) === merge(b, a) - Ensure that in case of merge_into(), a toggle_set is always returned.
Diffstat (limited to 'wa/utils')
-rw-r--r--wa/utils/types.py8
1 files changed, 4 insertions, 4 deletions
diff --git a/wa/utils/types.py b/wa/utils/types.py
index 607c5a84..ef6c7bd7 100644
--- a/wa/utils/types.py
+++ b/wa/utils/types.py
@@ -390,12 +390,12 @@ class toggle_set(set):
set.__init__(self, *args)
def merge_with(self, other):
- new_self = copy(self)
- return toggle_set.merge(other, new_self)
+ other = copy(other)
+ return toggle_set.merge(self, toggle_set(other))
def merge_into(self, other):
- other = copy(other)
- return toggle_set.merge(self, other)
+ new_self = copy(self)
+ return toggle_set.merge(other, new_self)
def add(self, item):
if item not in self: