Антипова Алёна 425 гр. ClassCounter 10225
Толстобров Илья Андреевич 514 ClassCounter 9461
f1class Generative(type):f1class Generative(type):
2    _count = 02    _count = 0
33
n4    class _GenerationProperty:n4    class GenDesc:
55
n6        def __get__(self, obj, cls):n6        def __get__(self, instance, owner):
7            return Generative._count7            return Generative._count
88
n9        def __set__(self, obj, value):n9        def __set__(self, instance, value):
10            raise AttributeError('Cannot set generation')10            raise AttributeError('generation is read-only')
1111
n12        def __delete__(self, obj):n12        def __delete__(self, instance):
13            raise AttributeError('Cannot delete generation')13            raise AttributeError('generation cannot be deleted')
1414
n15    def __new__(mcls, name, bases, namespace):n15    def __new__(mcls, name, bases, ns):
16        Generative._count += 116        mcls._count += 1
17        namespace['generation'] = Generative._GenerationProperty()17        ns['generation'] = mcls.GenDesc()
18        return super().__new__(mcls, name, bases, namespace)18        return super().__new__(mcls, name, bases, ns)
1919
20    def __setattr__(cls, key, value):20    def __setattr__(cls, key, value):
21        if key == 'generation':21        if key == 'generation':
n22            raise AttributeError('Cannot set generation')n22            raise AttributeError('generation is read-only')
23        super().__setattr__(key, value)23        super().__setattr__(key, value)
2424
25    def __delattr__(cls, key):25    def __delattr__(cls, key):
26        if key == 'generation':26        if key == 'generation':
t27            raise AttributeError('Cannot delete generation')t27            raise AttributeError('generation cannot be deleted')
28        super().__delattr__(key)28        super().__delattr__(key)
Legends
Colors
 Added 
Changed
Deleted
Links
(f)irst change
(n)ext change
(t)op