build(python): simplify rpycdec vendor layout
This commit was merged in pull request #17.
This commit is contained in:
33
third_party/python/rpycdec/src/renpy/object.py
vendored
Normal file
33
third_party/python/rpycdec/src/renpy/object.py
vendored
Normal file
@@ -0,0 +1,33 @@
|
||||
class Object(object):
|
||||
__version__ = 0
|
||||
|
||||
nosave = []
|
||||
|
||||
def __getstate__(self):
|
||||
rv = vars(self).copy()
|
||||
|
||||
for f in self.nosave:
|
||||
if f in rv:
|
||||
del rv[f]
|
||||
|
||||
rv["__version__"] = self.__version__
|
||||
|
||||
return rv
|
||||
|
||||
# None, to prevent this from being called when unnecessary.
|
||||
after_setstate = None
|
||||
|
||||
def __setstate__(self, new_dict):
|
||||
version = new_dict.pop("__version__", 0)
|
||||
|
||||
self.__dict__.update(new_dict)
|
||||
|
||||
if version != self.__version__:
|
||||
self.after_upgrade(version) # E1101
|
||||
|
||||
if self.after_setstate:
|
||||
self.after_setstate() # E1102
|
||||
|
||||
|
||||
class Sentinel(object):
|
||||
pass
|
||||
Reference in New Issue
Block a user