diff options
| author | Lukas Wirth <lukastw97@gmail.com> | 2024-06-04 12:31:04 +0200 |
|---|---|---|
| committer | Lukas Wirth <lukastw97@gmail.com> | 2024-06-04 12:38:20 +0200 |
| commit | 211af03439e90d8ffd04cdb73769f5ad2e782622 (patch) | |
| tree | bdd93a37db766c917209503e055625e439fb991c /src/tools/rust-analyzer/crates/hir | |
| parent | 845754af9c85b51c42686078d55485cad3c3eab1 (diff) | |
| download | rust-211af03439e90d8ffd04cdb73769f5ad2e782622.tar.gz rust-211af03439e90d8ffd04cdb73769f5ad2e782622.zip | |
Cleanup some inert attribute stuff
Diffstat (limited to 'src/tools/rust-analyzer/crates/hir')
| -rw-r--r-- | src/tools/rust-analyzer/crates/hir/src/lib.rs | 13 | ||||
| -rw-r--r-- | src/tools/rust-analyzer/crates/hir/src/semantics.rs | 14 |
2 files changed, 12 insertions, 15 deletions
diff --git a/src/tools/rust-analyzer/crates/hir/src/lib.rs b/src/tools/rust-analyzer/crates/hir/src/lib.rs index 8a91179cd4b..79321df6b6a 100644 --- a/src/tools/rust-analyzer/crates/hir/src/lib.rs +++ b/src/tools/rust-analyzer/crates/hir/src/lib.rs @@ -113,7 +113,7 @@ pub use hir_ty::method_resolution::TyFingerprint; pub use { cfg::{CfgAtom, CfgExpr, CfgOptions}, hir_def::{ - attr::{builtin::AttributeTemplate, AttrSourceMap, Attrs, AttrsWithOwner}, + attr::{AttrSourceMap, Attrs, AttrsWithOwner}, data::adt::StructKind, find_path::PrefixKind, import_map, @@ -132,6 +132,7 @@ pub use { attrs::{Attr, AttrId}, change::ChangeWithProcMacros, hygiene::{marks_rev, SyntaxContextExt}, + inert_attr_macro::AttributeTemplate, name::{known, Name}, proc_macro::ProcMacros, tt, ExpandResult, HirFileId, HirFileIdExt, InFile, InMacroFile, InRealFile, MacroFileId, @@ -3389,7 +3390,7 @@ impl BuiltinAttr { } fn builtin(name: &str) -> Option<Self> { - hir_def::attr::builtin::find_builtin_attr_idx(name) + hir_expand::inert_attr_macro::find_builtin_attr_idx(name) .map(|idx| BuiltinAttr { krate: None, idx: idx as u32 }) } @@ -3397,14 +3398,18 @@ impl BuiltinAttr { // FIXME: Return a `Name` here match self.krate { Some(krate) => db.crate_def_map(krate).registered_attrs()[self.idx as usize].clone(), - None => SmolStr::new(hir_def::attr::builtin::INERT_ATTRIBUTES[self.idx as usize].name), + None => { + SmolStr::new(hir_expand::inert_attr_macro::INERT_ATTRIBUTES[self.idx as usize].name) + } } } pub fn template(&self, _: &dyn HirDatabase) -> Option<AttributeTemplate> { match self.krate { Some(_) => None, - None => Some(hir_def::attr::builtin::INERT_ATTRIBUTES[self.idx as usize].template), + None => { + Some(hir_expand::inert_attr_macro::INERT_ATTRIBUTES[self.idx as usize].template) + } } } } diff --git a/src/tools/rust-analyzer/crates/hir/src/semantics.rs b/src/tools/rust-analyzer/crates/hir/src/semantics.rs index 43de2a6ee7d..0cde3f000a5 100644 --- a/src/tools/rust-analyzer/crates/hir/src/semantics.rs +++ b/src/tools/rust-analyzer/crates/hir/src/semantics.rs @@ -1617,17 +1617,9 @@ fn macro_call_to_macro_id( macro_call_id: MacroCallId, ) -> Option<MacroId> { let loc = db.lookup_intern_macro_call(macro_call_id); - match loc.def.kind { - hir_expand::MacroDefKind::Declarative(it) - | hir_expand::MacroDefKind::BuiltIn(_, it) - | hir_expand::MacroDefKind::BuiltInAttr(_, it) - | hir_expand::MacroDefKind::BuiltInDerive(_, it) - | hir_expand::MacroDefKind::BuiltInEager(_, it) => { - ctx.macro_to_def(InFile::new(it.file_id, it.to_node(db))) - } - hir_expand::MacroDefKind::ProcMacro(_, _, it) => { - ctx.proc_macro_to_def(InFile::new(it.file_id, it.to_node(db))) - } + match loc.def.ast_id() { + Either::Left(it) => ctx.macro_to_def(InFile::new(it.file_id, it.to_node(db))), + Either::Right(it) => ctx.proc_macro_to_def(InFile::new(it.file_id, it.to_node(db))), } } |
