Eric V. Smith | 3059042 | 2018-05-14 17:16:52 -0400 | [diff] [blame^] | 1 | from dataclasses import * |
2 | |||||
3 | class D: | ||||
4 | """A descriptor class that knows its name.""" | ||||
5 | def __set_name__(self, owner, name): | ||||
6 | self.name = name | ||||
7 | def __get__(self, instance, owner): | ||||
8 | if instance is not None: | ||||
9 | return 1 | ||||
10 | return self | ||||
11 | |||||
12 | from dataclasses import * | ||||
13 | |||||
14 | @dataclass | ||||
15 | class C: | ||||
16 | d: int = field(default=D(), init=False) | ||||
17 | |||||
18 | @dataclass | ||||
19 | class E(C): | ||||
20 | e: int = field(default=D(), init=False) |