summaryrefslogtreecommitdiffstats
path: root/Lib/rfc822.py
diff options
context:
space:
mode:
Diffstat (limited to 'Lib/rfc822.py')
-rw-r--r--Lib/rfc822.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/Lib/rfc822.py b/Lib/rfc822.py
index 6473149..42aac1c 100644
--- a/Lib/rfc822.py
+++ b/Lib/rfc822.py
@@ -763,6 +763,13 @@ class AddressList(AddrlistClass):
newaddr.addresslist.append(x)
return newaddr
+ def __iadd__(self, other):
+ # Set union, in-place
+ for x in other.addresslist:
+ if not x in self.addresslist:
+ self.addresslist.append(x)
+ return self
+
def __sub__(self, other):
# Set difference
newaddr = AddressList(None)
@@ -771,6 +778,13 @@ class AddressList(AddrlistClass):
newaddr.addresslist.append(x)
return newaddr
+ def __isub__(self, other):
+ # Set difference, in-place
+ for x in other.addresslist:
+ if x in self.addresslist:
+ self.addresslist.remove(x)
+ return self
+
def __getitem__(self, index):
# Make indexing, slices, and 'in' work
return self.addresslist[index]