From 4e2491dbb132ec6327c1d3327878ea69bc938c1b Mon Sep 17 00:00:00 2001 From: Guido van Rossum Date: Tue, 28 Jan 2003 22:31:25 +0000 Subject: [PATCH] Add a comment about how some built-in types should grow a __getnewargs__ method. --- Lib/pickle.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Lib/pickle.py b/Lib/pickle.py index 9a5747e842..b9bafce964 100644 --- a/Lib/pickle.py +++ b/Lib/pickle.py @@ -368,13 +368,15 @@ class Pickler: def save_newobj(self, obj): # Save a new-style class instance, using protocol 2. - # XXX Much of this is still experimental. + # XXX This is still experimental. assert self.proto >= 2 # This only works for protocol 2 t = type(obj) getnewargs = getattr(obj, "__getnewargs__", None) if getnewargs: args = getnewargs() # This bette not reference obj else: + # XXX These types should each grow a __getnewargs__ + # implementation so this special-casing is unnecessary. for cls in int, long, float, complex, str, UnicodeType, tuple: if cls and isinstance(obj, cls): args = (cls(obj),) -- 2.40.0