We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
root()
1 parent 494fdbf commit 38fc4aaCopy full SHA for 38fc4aa
astroid/nodes/node_ng.py
@@ -332,9 +332,12 @@ def root(self) -> nodes.Module:
332
333
:returns: The root node.
334
"""
335
- if self.parent:
336
- return self.parent.root()
337
- return self # type: ignore[return-value] # Only 'Module' does not have a parent node.
+ if not (parent := self.parent):
+ return self # type: ignore[return-value] # Only 'Module' does not have a parent node.
+
338
+ while parent.parent:
339
+ parent = parent.parent
340
+ return parent # type: ignore[return-value] # Only 'Module' does not have a parent node.
341
342
def child_sequence(self, child):
343
"""Search for the sequence that contains this child.
0 commit comments