Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class TwitchObject(dict):
- def __setattr__(self, name, value):
- if name[0] == '_' or name in self.__dict__:
- return super(TwitchObject, self).__setattr__(name, value)
- self[name] = value
- def __getattr__(self, name):
- return self[name]
- def __delattr__(self, name):
- if name[0] == '_':
- return super(TwitchObject, self).__delattr__(name)
- del self[name]
- def __setitem__(self, key, value):
- key = key.lstrip('_')
- super(TwitchObject, self).__setitem__(key, value)
- @classmethod
- def construct_from(cls, values):
- instance = cls()
- instance.refresh_from(values)
- return instance
- def refresh_from(self, values):
- for key, value in six.iteritems(values.copy()):
- self.__setitem__(key, convert_to_twitch_object(key, value))
Advertisement
Add Comment
Please, Sign In to add comment