[issue46757] dataclasses should define an empty __post_init__
Neil Girdhar
report at bugs.python.org
Mon Feb 21 23:32:24 EST 2022
Neil Girdhar <mistersheik at gmail.com> added the comment:
@Raymond yeah I've been thinking about this some more, and there's no way to have a "top level" method with the dataclass decorator.
I think I will make a case to have a class version of dataclasses that works with inheritance. Class versions of dataclasses are used in some places like here: https://github.com/google/flax/blob/main/flax/struct.py#L184
They just call dataclass on the class in __init_subclass__.
If we had something like this in the standard library, then you could put your empty __post_init__ in that class. You could also make __init__ call super so that mixins would be initialized (right now the collider pattern you showed also breaks if B is not a dataclass, and has a non-trivial __init__).
----------
_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue46757>
_______________________________________
More information about the Python-bugs-list
mailing list