Support for augmented assignment in the UserList, UserDict, UserString and
rfc822 (Addresslist) modules. Also a preliminary testcase for augmented
assignment, which should actually be merged with the test_class testcase I
added last week.
diff --git a/Lib/UserList.py b/Lib/UserList.py
index d4a8d2f..1146060 100644
--- a/Lib/UserList.py
+++ b/Lib/UserList.py
@@ -51,9 +51,20 @@
             return self.__class__(other + self.data)
         else:
             return self.__class__(list(other) + self.data)
+    def __iadd__(self, other):
+        if isinstance(other, UserList):
+            self.data += other.data
+        elif isinstance(other, type(self.data)):
+            self.data += other
+        else:
+            self.data += list(other)
+        return self
     def __mul__(self, n):
         return self.__class__(self.data*n)
     __rmul__ = __mul__
+    def __imul__(self, n):
+        self.data *= n
+        return self
     def append(self, item): self.data.append(item)
     def insert(self, i, item): self.data.insert(i, item)
     def pop(self, i=-1): return self.data.pop(i)