From a87bec51485feb491f7b1b80c06a29d86ebaf681 Mon Sep 17 00:00:00 2001 From: Jonas Schievink Date: Mon, 10 May 2021 16:35:06 +0200 Subject: Move `AttrId` back into `hir_def` --- crates/hir_def/src/attr.rs | 5 ++++- crates/hir_def/src/lib.rs | 6 +++--- crates/hir_def/src/nameres/collector.rs | 4 ++-- crates/hir_expand/src/builtin_derive.rs | 4 ++-- crates/hir_expand/src/lib.rs | 5 +---- 5 files changed, 12 insertions(+), 12 deletions(-) diff --git a/crates/hir_def/src/attr.rs b/crates/hir_def/src/attr.rs index a2479016e..469811ce8 100644 --- a/crates/hir_def/src/attr.rs +++ b/crates/hir_def/src/attr.rs @@ -9,7 +9,7 @@ use std::{ use base_db::CrateId; use cfg::{CfgExpr, CfgOptions}; use either::Either; -use hir_expand::{hygiene::Hygiene, name::AsName, AstId, AttrId, InFile}; +use hir_expand::{hygiene::Hygiene, name::AsName, AstId, InFile}; use itertools::Itertools; use la_arena::ArenaMap; use mbe::ast_to_token_tree; @@ -615,6 +615,9 @@ impl DocsRangeMap { } } +#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)] +pub struct AttrId(pub u32); + #[derive(Debug, Clone, PartialEq, Eq)] pub struct Attr { pub(crate) id: AttrId, diff --git a/crates/hir_def/src/lib.rs b/crates/hir_def/src/lib.rs index e96ca953f..869e0280e 100644 --- a/crates/hir_def/src/lib.rs +++ b/crates/hir_def/src/lib.rs @@ -62,14 +62,14 @@ use hir_expand::{ ast_id_map::FileAstId, eager::{expand_eager_macro, ErrorEmitted, ErrorSink}, hygiene::Hygiene, - AstId, AttrId, FragmentKind, HirFileId, InFile, MacroCallId, MacroCallKind, MacroDefId, - MacroDefKind, + AstId, FragmentKind, HirFileId, InFile, MacroCallId, MacroCallKind, MacroDefId, MacroDefKind, }; use la_arena::Idx; use nameres::DefMap; use path::ModPath; use syntax::ast; +use crate::attr::AttrId; use crate::builtin_type::BuiltinType; use item_tree::{ Const, Enum, Function, Impl, ItemTreeId, ItemTreeNode, ModItem, Static, Struct, Trait, @@ -753,7 +753,7 @@ fn derive_macro_as_call_id( MacroCallKind::Derive { ast_id: item_attr.ast_id, derive_name: last_segment.to_string(), - derive_attr, + derive_attr_index: derive_attr.0, }, ) .into(); diff --git a/crates/hir_def/src/nameres/collector.rs b/crates/hir_def/src/nameres/collector.rs index e89136ed1..adfb78c94 100644 --- a/crates/hir_def/src/nameres/collector.rs +++ b/crates/hir_def/src/nameres/collector.rs @@ -13,14 +13,14 @@ use hir_expand::{ builtin_macro::find_builtin_macro, name::{AsName, Name}, proc_macro::ProcMacroExpander, - AttrId, FragmentKind, HirFileId, MacroCallId, MacroCallKind, MacroDefId, MacroDefKind, + FragmentKind, HirFileId, MacroCallId, MacroCallKind, MacroDefId, MacroDefKind, }; use hir_expand::{InFile, MacroCallLoc}; use rustc_hash::{FxHashMap, FxHashSet}; use syntax::ast; use crate::{ - attr::Attrs, + attr::{AttrId, Attrs}, db::DefDatabase, derive_macro_as_call_id, intern::Interned, diff --git a/crates/hir_expand/src/builtin_derive.rs b/crates/hir_expand/src/builtin_derive.rs index 537c03028..b6a6d602f 100644 --- a/crates/hir_expand/src/builtin_derive.rs +++ b/crates/hir_expand/src/builtin_derive.rs @@ -269,7 +269,7 @@ mod tests { use expect_test::{expect, Expect}; use name::AsName; - use crate::{test_db::TestDB, AstId, AttrId, MacroCallId, MacroCallKind, MacroCallLoc}; + use crate::{test_db::TestDB, AstId, MacroCallId, MacroCallKind, MacroCallLoc}; use super::*; @@ -320,7 +320,7 @@ $0 kind: MacroCallKind::Derive { ast_id, derive_name: name.to_string(), - derive_attr: AttrId(0), + derive_attr_index: 0, }, }; diff --git a/crates/hir_expand/src/lib.rs b/crates/hir_expand/src/lib.rs index 80ab3aeee..57e08eeb0 100644 --- a/crates/hir_expand/src/lib.rs +++ b/crates/hir_expand/src/lib.rs @@ -293,12 +293,9 @@ pub struct MacroCallLoc { #[derive(Debug, Clone, PartialEq, Eq, Hash)] pub enum MacroCallKind { FnLike { ast_id: AstId, fragment: FragmentKind }, - Derive { ast_id: AstId, derive_name: String, derive_attr: AttrId }, + Derive { ast_id: AstId, derive_name: String, derive_attr_index: u32 }, } -#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)] -pub struct AttrId(pub u32); - impl MacroCallKind { fn file_id(&self) -> HirFileId { match self { -- cgit v1.2.3