This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author ethan.furman
Recipients Joshua.Chin, ethan.furman, pitrou, r.david.murray, rhettinger
Date 2014-10-31.22:31:20
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1414794680.98.0.595971074307.issue22766@psf.upfronthosting.co.za>
In-reply-to
Content
https://docs.python.org/2/reference/datamodel.html#object.__iadd__
------------------------------------------------------------------
[...] These methods should attempt to do the operation in-place (modifying self) and return the result (which could be, but does not have to be, self). If a specific method is not defined, the augmented assignment falls back to the normal methods. For instance, to execute the statement x += y, where x is an instance of a class that has an __iadd__() method, x.__iadd__(y) is called. If x is an instance of a class that does not define a __iadd__() method, x.__add__(y) and y.__radd__(x) are considered, as with the evaluation of x + y.

-------------------------------------------------------------------

Returning NotImplemented still allows a TypeError to be raised, is subclass friendly, and is the way Python is designed.
History
Date User Action Args
2014-10-31 22:31:21ethan.furmansetrecipients: + ethan.furman, rhettinger, pitrou, r.david.murray, Joshua.Chin
2014-10-31 22:31:20ethan.furmansetmessageid: <1414794680.98.0.595971074307.issue22766@psf.upfronthosting.co.za>
2014-10-31 22:31:20ethan.furmanlinkissue22766 messages
2014-10-31 22:31:20ethan.furmancreate