File tree Expand file tree Collapse file tree 1 file changed +7
-10
lines changed Expand file tree Collapse file tree 1 file changed +7
-10
lines changed Original file line number Diff line number Diff line change @@ -6330,23 +6330,20 @@ class C:
63306330 or not self .is_defined_in_current_module (node .fullname )
63316331 ):
63326332 return True
6333- if (
6334- isinstance (node , (TypeInfo , TypeAlias ))
6335- or isinstance (node , PlaceholderNode )
6336- and node .becomes_typeinfo
6337- ):
6333+ if self .is_type_like (node ):
63386334 # Allow forward references to classes/type aliases (see docstring), but
63396335 # a forward reference should never shadow an existing regular reference.
63406336 if node .name not in self .globals :
63416337 return True
63426338 global_node = self .globals [node .name ]
6343- return (
6344- isinstance (global_node .node , (TypeInfo , TypeAlias ))
6345- or isinstance (global_node .node , PlaceholderNode )
6346- and global_node .node .becomes_typeinfo
6347- )
6339+ return not self .is_type_like (global_node .node )
63486340 return False
63496341
6342+ def is_type_like (self , node : SymbolNode | None ) -> bool :
6343+ return isinstance (node , (TypeInfo , TypeAlias )) or (
6344+ isinstance (node , PlaceholderNode ) and node .becomes_typeinfo
6345+ )
6346+
63506347 def is_textually_before_statement (self , node : SymbolNode ) -> bool :
63516348 """Check if a node is defined textually before the current statement
63526349
You can’t perform that action at this time.
0 commit comments