diff --git a/crates/ty_python_semantic/src/place.rs b/crates/ty_python_semantic/src/place.rs index 98f7a2b8e4..a1319a3250 100644 --- a/crates/ty_python_semantic/src/place.rs +++ b/crates/ty_python_semantic/src/place.rs @@ -783,7 +783,7 @@ pub(crate) fn place_by_id<'db>( let declarations = match considered_definitions { ConsideredDefinitions::EndOfScope => use_def.end_of_scope_declarations(place_id), - ConsideredDefinitions::AllReachable => use_def.all_reachable_declarations(place_id), + ConsideredDefinitions::AllReachable => use_def.reachable_declarations(place_id), }; let declared = place_from_declarations_impl(db, declarations, requires_explicit_reexport) @@ -791,7 +791,7 @@ pub(crate) fn place_by_id<'db>( let all_considered_bindings = || match considered_definitions { ConsideredDefinitions::EndOfScope => use_def.end_of_scope_bindings(place_id), - ConsideredDefinitions::AllReachable => use_def.all_reachable_bindings(place_id), + ConsideredDefinitions::AllReachable => use_def.reachable_bindings(place_id), }; // If a symbol is undeclared, but qualified with `typing.Final`, we use the right-hand side diff --git a/crates/ty_python_semantic/src/semantic_index.rs b/crates/ty_python_semantic/src/semantic_index.rs index f4ab765f08..a38b0a7ded 100644 --- a/crates/ty_python_semantic/src/semantic_index.rs +++ b/crates/ty_python_semantic/src/semantic_index.rs @@ -113,10 +113,7 @@ pub(crate) fn attribute_assignments<'db, 's>( let place_table = index.place_table(function_scope_id); let member = place_table.member_id_by_instance_attribute_name(name)?; let use_def = &index.use_def_maps[function_scope_id]; - Some(( - use_def.all_reachable_member_bindings(member), - function_scope_id, - )) + Some((use_def.reachable_member_bindings(member), function_scope_id)) }) } @@ -138,7 +135,7 @@ pub(crate) fn attribute_declarations<'db, 's>( let member = place_table.member_id_by_instance_attribute_name(name)?; let use_def = &index.use_def_maps[function_scope_id]; Some(( - use_def.all_reachable_member_declarations(member), + use_def.reachable_member_declarations(member), function_scope_id, )) }) diff --git a/crates/ty_python_semantic/src/semantic_index/use_def.rs b/crates/ty_python_semantic/src/semantic_index/use_def.rs index a7c7520806..5683fc736b 100644 --- a/crates/ty_python_semantic/src/semantic_index/use_def.rs +++ b/crates/ty_python_semantic/src/semantic_index/use_def.rs @@ -453,17 +453,17 @@ impl<'db> UseDefMap<'db> { ) } - pub(crate) fn all_reachable_bindings( + pub(crate) fn reachable_bindings( &self, place: ScopedPlaceId, ) -> BindingWithConstraintsIterator<'_, 'db> { match place { - ScopedPlaceId::Symbol(symbol) => self.all_reachable_symbol_bindings(symbol), - ScopedPlaceId::Member(member) => self.all_reachable_member_bindings(member), + ScopedPlaceId::Symbol(symbol) => self.reachable_symbol_bindings(symbol), + ScopedPlaceId::Member(member) => self.reachable_member_bindings(member), } } - pub(crate) fn all_reachable_symbol_bindings( + pub(crate) fn reachable_symbol_bindings( &self, symbol: ScopedSymbolId, ) -> BindingWithConstraintsIterator<'_, 'db> { @@ -471,7 +471,7 @@ impl<'db> UseDefMap<'db> { self.bindings_iterator(bindings, BoundnessAnalysis::AssumeBound) } - pub(crate) fn all_reachable_member_bindings( + pub(crate) fn reachable_member_bindings( &self, symbol: ScopedMemberId, ) -> BindingWithConstraintsIterator<'_, 'db> { @@ -547,7 +547,7 @@ impl<'db> UseDefMap<'db> { self.declarations_iterator(declarations, BoundnessAnalysis::BasedOnUnboundVisibility) } - pub(crate) fn all_reachable_symbol_declarations( + pub(crate) fn reachable_symbol_declarations( &self, symbol: ScopedSymbolId, ) -> DeclarationsIterator<'_, 'db> { @@ -555,7 +555,7 @@ impl<'db> UseDefMap<'db> { self.declarations_iterator(declarations, BoundnessAnalysis::AssumeBound) } - pub(crate) fn all_reachable_member_declarations( + pub(crate) fn reachable_member_declarations( &self, member: ScopedMemberId, ) -> DeclarationsIterator<'_, 'db> { @@ -563,13 +563,13 @@ impl<'db> UseDefMap<'db> { self.declarations_iterator(declarations, BoundnessAnalysis::AssumeBound) } - pub(crate) fn all_reachable_declarations( + pub(crate) fn reachable_declarations( &self, place: ScopedPlaceId, ) -> DeclarationsIterator<'_, 'db> { match place { - ScopedPlaceId::Symbol(symbol) => self.all_reachable_symbol_declarations(symbol), - ScopedPlaceId::Member(member) => self.all_reachable_member_declarations(member), + ScopedPlaceId::Symbol(symbol) => self.reachable_symbol_declarations(symbol), + ScopedPlaceId::Member(member) => self.reachable_member_declarations(member), } } diff --git a/crates/ty_python_semantic/src/types/class.rs b/crates/ty_python_semantic/src/types/class.rs index 71ae73f1b1..32962ea128 100644 --- a/crates/ty_python_semantic/src/types/class.rs +++ b/crates/ty_python_semantic/src/types/class.rs @@ -3457,7 +3457,7 @@ impl<'db> ClassLiteral<'db> { .symbol_id(&method_def.node(&module).name) .unwrap(); class_map - .all_reachable_symbol_bindings(method_place) + .reachable_symbol_bindings(method_place) .find_map(|bind| { (bind.binding.is_defined_and(|def| def == method)) .then(|| class_map.binding_reachability(db, &bind)) diff --git a/crates/ty_python_semantic/src/types/enums.rs b/crates/ty_python_semantic/src/types/enums.rs index 9a91d1da3d..fcc8552b52 100644 --- a/crates/ty_python_semantic/src/types/enums.rs +++ b/crates/ty_python_semantic/src/types/enums.rs @@ -76,7 +76,7 @@ pub(crate) fn enum_metadata<'db>( let mut auto_counter = 0; let ignored_names: Option> = if let Some(ignore) = table.symbol_id("_ignore_") { - let ignore_bindings = use_def_map.all_reachable_symbol_bindings(ignore); + let ignore_bindings = use_def_map.reachable_symbol_bindings(ignore); let ignore_place = place_from_bindings(db, ignore_bindings).place; match ignore_place { diff --git a/crates/ty_python_semantic/src/types/ide_support.rs b/crates/ty_python_semantic/src/types/ide_support.rs index d32eba2ace..5162e8a13d 100644 --- a/crates/ty_python_semantic/src/types/ide_support.rs +++ b/crates/ty_python_semantic/src/types/ide_support.rs @@ -86,9 +86,9 @@ pub fn definitions_for_name<'db>( if let Some(global_symbol_id) = global_place_table.symbol_id(name_str) { let global_use_def_map = crate::semantic_index::use_def_map(db, global_scope_id); let global_bindings = - global_use_def_map.all_reachable_symbol_bindings(global_symbol_id); + global_use_def_map.reachable_symbol_bindings(global_symbol_id); let global_declarations = - global_use_def_map.all_reachable_symbol_declarations(global_symbol_id); + global_use_def_map.reachable_symbol_declarations(global_symbol_id); for binding in global_bindings { if let Some(def) = binding.binding.definition() { @@ -114,8 +114,8 @@ pub fn definitions_for_name<'db>( let use_def_map = index.use_def_map(scope_id); // Get all definitions (both bindings and declarations) for this place - let bindings = use_def_map.all_reachable_symbol_bindings(symbol_id); - let declarations = use_def_map.all_reachable_symbol_declarations(symbol_id); + let bindings = use_def_map.reachable_symbol_bindings(symbol_id); + let declarations = use_def_map.reachable_symbol_declarations(symbol_id); for binding in bindings { if let Some(def) = binding.binding.definition() { @@ -294,7 +294,7 @@ pub fn definitions_for_attribute<'db>( let use_def = use_def_map(db, class_scope); // Check declarations first - for decl in use_def.all_reachable_symbol_declarations(place_id) { + for decl in use_def.reachable_symbol_declarations(place_id) { if let Some(def) = decl.declaration.definition() { resolved.extend(resolve_definition( db, @@ -307,7 +307,7 @@ pub fn definitions_for_attribute<'db>( } // If no declarations found, check bindings - for binding in use_def.all_reachable_symbol_bindings(place_id) { + for binding in use_def.reachable_symbol_bindings(place_id) { if let Some(def) = binding.binding.definition() { resolved.extend(resolve_definition( db, @@ -332,7 +332,7 @@ pub fn definitions_for_attribute<'db>( let use_def = index.use_def_map(function_scope_id); // Check declarations first - for decl in use_def.all_reachable_member_declarations(place_id) { + for decl in use_def.reachable_member_declarations(place_id) { if let Some(def) = decl.declaration.definition() { resolved.extend(resolve_definition( db, @@ -345,7 +345,7 @@ pub fn definitions_for_attribute<'db>( } // If no declarations found, check bindings - for binding in use_def.all_reachable_member_bindings(place_id) { + for binding in use_def.reachable_member_bindings(place_id) { if let Some(def) = binding.binding.definition() { resolved.extend(resolve_definition( db, @@ -1096,8 +1096,8 @@ mod resolve_definition { let mut definitions = IndexSet::new(); // Get all definitions (both bindings and declarations) for this place - let bindings = use_def_map.all_reachable_symbol_bindings(symbol_id); - let declarations = use_def_map.all_reachable_symbol_declarations(symbol_id); + let bindings = use_def_map.reachable_symbol_bindings(symbol_id); + let declarations = use_def_map.reachable_symbol_declarations(symbol_id); for binding in bindings { if let Some(def) = binding.binding.definition() { diff --git a/crates/ty_python_semantic/src/types/infer/builder.rs b/crates/ty_python_semantic/src/types/infer/builder.rs index 5c733454a0..94366f8cb3 100644 --- a/crates/ty_python_semantic/src/types/infer/builder.rs +++ b/crates/ty_python_semantic/src/types/infer/builder.rs @@ -8894,7 +8894,7 @@ impl<'db, 'ast> TypeInferenceBuilder<'db, 'ast> { // If we're inferring types of deferred expressions, look them up from end-of-scope. if self.is_deferred() { let place = if let Some(place_id) = place_table.place_id(expr) { - place_from_bindings(db, use_def.all_reachable_bindings(place_id)).place + place_from_bindings(db, use_def.reachable_bindings(place_id)).place } else { assert!( self.deferred_state.in_string_annotation(), diff --git a/crates/ty_python_semantic/src/types/overrides.rs b/crates/ty_python_semantic/src/types/overrides.rs index 5d6328a606..b80873992a 100644 --- a/crates/ty_python_semantic/src/types/overrides.rs +++ b/crates/ty_python_semantic/src/types/overrides.rs @@ -129,7 +129,7 @@ fn check_class_declaration<'db>( && PROHIBITED_NAMEDTUPLE_ATTRS.contains(&member.name.as_str()) && let Some(symbol_id) = place_table(db, class_scope).symbol_id(&member.name) && let Some(bad_definition) = use_def_map(db, class_scope) - .all_reachable_bindings(ScopedPlaceId::Symbol(symbol_id)) + .reachable_bindings(ScopedPlaceId::Symbol(symbol_id)) .filter_map(|binding| binding.binding.definition()) .find(|def| !matches!(def.kind(db), DefinitionKind::AnnotatedAssignment(_))) && let Some(builder) = context.report_lint(