def test_oldstyleclass(self): from pickle import _EmptyClass obj = _EmptyClass() obj.value = 1234 flattened = self.pickler.flatten(obj) self.assertEqual(1234, flattened['value']) inflated = self.unpickler.restore(flattened) self.assertEqual(1234, inflated.value)
def _instantiate(self, klass, k): args = tuple(self.stack[k + 1 :]) del self.stack[k:] instantiated = 0 if not args and type(klass) is ClassType and not hasattr(klass, "__getinitargs__"): try: value = _EmptyClass() value.__class__ = klass instantiated = 1 except RuntimeError: # In restricted execution, assignment to inst.__class__ is # prohibited pass if not instantiated: try: value = klass(*args) except TypeError, err: raise TypeError, "in constructor for %s: %s" % (klass.__name__, str(err)), sys.exc_info()[2]
def _instantiate(self, klass, k): args = tuple(self.stack[k + 1:]) del self.stack[k:] instantiated = 0 if (not args and type(klass) is ClassType and not hasattr(klass, "__getinitargs__")): try: value = _EmptyClass() value.__class__ = klass instantiated = 1 except RuntimeError: # In restricted execution, assignment to inst.__class__ is # prohibited pass if not instantiated: try: value = klass(*args) except TypeError, err: raise TypeError, "in constructor for %s: %s" % ( klass.__name__, str(err)), sys.exc_info()[2]