diff --git a/Lib/collections.py b/Lib/collections.py index 79912ecba1f..b2a590bd771 100644 --- a/Lib/collections.py +++ b/Lib/collections.py @@ -98,16 +98,6 @@ def __reversed__(self): yield curr.key curr = curr.prev - def __reduce__(self): - 'Return state information for pickling' - items = [[k, self[k]] for k in self] - inst_dict = vars(self).copy() - for k in vars(OrderedDict()): - inst_dict.pop(k, None) - if inst_dict: - return (self.__class__, (items,), inst_dict) - return self.__class__, (items,) - update = __update = MutableMapping.update keys = MutableMapping.keys values = MutableMapping.values @@ -156,6 +146,16 @@ def __repr__(self): self.__in_repr = False return result + def __reduce__(self): + 'Return state information for pickling' + items = [[k, self[k]] for k in self] + inst_dict = vars(self).copy() + for k in vars(OrderedDict()): + inst_dict.pop(k, None) + if inst_dict: + return (self.__class__, (items,), inst_dict) + return self.__class__, (items,) + def copy(self): 'od.copy() -> a shallow copy of od' return self.__class__(self)