resolve: MacroRulesScope::Binding -> MacroRulesScope::Def

`MacroRulesBinding` -> `MacroRulesDef`
This commit is contained in:
Vadim Petrochenkov 2025-12-30 20:47:03 +03:00
parent 7a34af2f67
commit 844e085de6
5 changed files with 12 additions and 14 deletions

View file

@ -33,7 +33,7 @@ use tracing::debug;
use crate::Namespace::{MacroNS, TypeNS, ValueNS};
use crate::def_collector::collect_definitions;
use crate::imports::{ImportData, ImportKind};
use crate::macros::{MacroRulesBinding, MacroRulesScope, MacroRulesScopeRef};
use crate::macros::{MacroRulesDecl, MacroRulesScope, MacroRulesScopeRef};
use crate::ref_mut::CmCell;
use crate::{
BindingKey, Decl, DeclData, DeclKind, ExternPreludeEntry, Finalize, MacroData, Module,
@ -1326,8 +1326,8 @@ impl<'a, 'ra, 'tcx> BuildReducedGraphVisitor<'a, 'ra, 'tcx> {
self.insert_unused_macro(ident, def_id, item.id);
}
self.r.feed_visibility(feed, vis);
let scope = self.r.arenas.alloc_macro_rules_scope(MacroRulesScope::Binding(
self.r.arenas.alloc_macro_rules_binding(MacroRulesBinding {
let scope = self.r.arenas.alloc_macro_rules_scope(MacroRulesScope::Def(
self.r.arenas.alloc_macro_rules_binding(MacroRulesDecl {
parent_macro_rules_scope: parent_scope.macro_rules,
binding,
ident,

View file

@ -1195,7 +1195,7 @@ impl<'ra, 'tcx> Resolver<'ra, 'tcx> {
// Never recommend deprecated helper attributes.
}
Scope::MacroRules(macro_rules_scope) => {
if let MacroRulesScope::Binding(macro_rules_binding) = macro_rules_scope.get() {
if let MacroRulesScope::Def(macro_rules_binding) = macro_rules_scope.get() {
let res = macro_rules_binding.binding.res();
if filter_fn(res) {
suggestions.push(TypoSuggestion::typo_from_ident(

View file

@ -182,7 +182,7 @@ impl<'ra, 'tcx> Resolver<'ra, 'tcx> {
}
Scope::DeriveHelpersCompat => Scope::MacroRules(parent_scope.macro_rules),
Scope::MacroRules(macro_rules_scope) => match macro_rules_scope.get() {
MacroRulesScope::Binding(binding) => {
MacroRulesScope::Def(binding) => {
Scope::MacroRules(binding.parent_macro_rules_scope)
}
MacroRulesScope::Invocation(invoc_id) => {
@ -559,9 +559,7 @@ impl<'ra, 'tcx> Resolver<'ra, 'tcx> {
result
}
Scope::MacroRules(macro_rules_scope) => match macro_rules_scope.get() {
MacroRulesScope::Binding(macro_rules_binding)
if ident == macro_rules_binding.ident =>
{
MacroRulesScope::Def(macro_rules_binding) if ident == macro_rules_binding.ident => {
Ok(macro_rules_binding.binding)
}
MacroRulesScope::Invocation(_) => Err(Determinacy::Undetermined),

View file

@ -38,7 +38,7 @@ use late::{
ForwardGenericParamBanReason, HasGenericParams, PathSource, PatternSource,
UnnecessaryQualification,
};
use macros::{MacroRulesBinding, MacroRulesScope, MacroRulesScopeRef};
use macros::{MacroRulesDecl, MacroRulesScope, MacroRulesScopeRef};
use rustc_arena::{DroplessArena, TypedArena};
use rustc_ast::node_id::NodeMap;
use rustc_ast::{
@ -1391,8 +1391,8 @@ impl<'ra> ResolverArenas<'ra> {
}
fn alloc_macro_rules_binding(
&'ra self,
binding: MacroRulesBinding<'ra>,
) -> &'ra MacroRulesBinding<'ra> {
binding: MacroRulesDecl<'ra>,
) -> &'ra MacroRulesDecl<'ra> {
self.dropless.alloc(binding)
}
fn alloc_ast_paths(&'ra self, paths: &[ast::Path]) -> &'ra [ast::Path] {

View file

@ -45,10 +45,10 @@ use crate::{
type Res = def::Res<NodeId>;
/// Binding produced by a `macro_rules` item.
/// Name declaration produced by a `macro_rules` item definition.
/// Not modularized, can shadow previous `macro_rules` bindings, etc.
#[derive(Debug)]
pub(crate) struct MacroRulesBinding<'ra> {
pub(crate) struct MacroRulesDecl<'ra> {
pub(crate) binding: Decl<'ra>,
/// `macro_rules` scope into which the `macro_rules` item was planted.
pub(crate) parent_macro_rules_scope: MacroRulesScopeRef<'ra>,
@ -65,7 +65,7 @@ pub(crate) enum MacroRulesScope<'ra> {
/// Empty "root" scope at the crate start containing no names.
Empty,
/// The scope introduced by a `macro_rules!` macro definition.
Binding(&'ra MacroRulesBinding<'ra>),
Def(&'ra MacroRulesDecl<'ra>),
/// The scope introduced by a macro invocation that can potentially
/// create a `macro_rules!` macro definition.
Invocation(LocalExpnId),