-
-
Notifications
You must be signed in to change notification settings - Fork 307
Description
I propose to move mixins.py to astroid.nodes. Specifically to make it a private module within that module.
The most important reason for this is that the Mixin classes in the file are only being used by classes in the nodes module so it makes sense to put them there.
An additional benefit would be that we could change some stuff around to make the inheritance pattern clearer. These Mixins are always mixed with nodes and to help mypy understand them and the astroid code base a little better ideally they should also inherit from NodeNG. This would stop mypy complaining about the usage of methods such as statement() within the methods of the Mixins.
mixins.py isn't included in the __init__.py of astroid and don't provide much use to anybody without actually using the nodes themselves. So I think we can consider this private API.