Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def copy(self, destination):
- new_obj = self.__new__(self.__class__)
- new_obj.__dict__['data'] = {}
- for field in self.__dict__.keys():
- if not field.startswith('__'):
- setattr(new_obj, field, self.__dict__[field])
- stack = list(new_obj.data.items())
- parent = self
- while stack:
- name, obj = stack.pop()
- if isinstance(obj, Folder):
- stack.extend(list(obj.items()))
- obj.__parent__ = parent
- parent = obj
- elif isinstance(obj, Page):
- obj.__parent__ = parent
- destination[new_obj.__name__] = new_obj
Add Comment
Please, Sign In to add comment