Жан-Юль-Ян Азель, 414 группа (КФ) UniSize 14649
Исанбеков Дамир 414 КФ UniSize 14615
n1def sizer(target_class):n1def sizer(cls):
22
n3    def retrieve_size(instance):n3    def get_size(self):
4        if hasattr(instance, '_custom_size'):4        if hasattr(self, '_size_override'):
5            return instance._custom_size5            return self._size_override
6        if hasattr(instance, '__len__'):6        if hasattr(self, '__len__'):
7            return len(instance)7            return len(self)
8        try:8        try:
n9            return abs(instance)n9            return abs(self)
10        except TypeError:10        except TypeError:
11            return 011            return 0
1212
n13    def assign_size(instance, value):n13    def set_size(self, value):
14        instance._custom_size = value14        self._size_override = value
1515
t16    def remove_size(instance):t16    def del_size(self):
17        if hasattr(instance, '_custom_size'):17        if hasattr(self, '_size_override'):
18            del instance._custom_size18            del self._size_override
19    setattr(target_class, 'size', property(retrieve_size, assign_size, r19    setattr(cls, 'size', property(get_size, set_size, del_size))
>emove_size)) 
20    return target_class20    return cls
Legends
Colors
 Added 
Changed
Deleted
Links
(f)irst change
(n)ext change
(t)op