Advertisement
Guest User

Untitled

a guest
Jun 23rd, 2017
54
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.58 KB | None | 0 0
  1. class Obj(object):
  2.  
  3. @classmethod
  4. def restore(cls, snapshot):
  5. o = cls.__new__(cls)
  6. o.recover(snapshot)
  7. return o
  8.  
  9. def __init__(self, some, param):
  10. self._some = some
  11. self._param = param
  12.  
  13. def snapshot(self):
  14. return (self._some, self._param)
  15.  
  16. def recover(self, snapshot):
  17. self._some, self._param = snapshot
  18.  
  19. def __repr__(self):
  20. return "<%s some=%r param=%r>" % (type(self), self._some, self._param)
  21.  
  22.  
  23. a = Obj(42, 18)
  24. print a
  25.  
  26. s = a.snapshot()
  27. print s
  28.  
  29. b = Obj.restore(s)
  30. print b
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement