Add a convenience method to check if a name is bound (#4718)

This commit is contained in:
Charlie Marsh 2023-05-29 21:52:41 -04:00 committed by GitHub
parent 1846d90bbd
commit 80fa3f2bfa
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 16 additions and 18 deletions

View file

@ -123,6 +123,12 @@ impl<'a> SemanticModel<'a> {
.map_or(false, |binding| binding.kind.is_builtin())
}
/// Return `true` if `member` is unbound.
pub fn is_unbound(&self, member: &str) -> bool {
self.find_binding(member)
.map_or(true, |binding| binding.kind.is_builtin())
}
/// Resolve a reference to the given symbol.
pub fn resolve_reference(&mut self, symbol: &str, range: TextRange) -> ResolvedReference {
// PEP 563 indicates that if a forward reference can be resolved in the module scope, we