Unnamed repository; edit this file 'description' to name the repository.
| -rw-r--r-- | crates/hir-def/src/db.rs | 25 | ||||
| -rw-r--r-- | crates/hir-def/src/expr_store/tests/body/block.rs | 6 | ||||
| -rw-r--r-- | crates/hir-def/src/macro_expansion_tests/mbe.rs | 16 | ||||
| -rw-r--r-- | crates/hir-def/src/nameres/collector.rs | 2 | ||||
| -rw-r--r-- | crates/hir-def/src/test_db.rs | 3 | ||||
| -rw-r--r-- | crates/hir-ty/src/test_db.rs | 4 | ||||
| -rw-r--r-- | crates/hir/src/db.rs | 2 | ||||
| -rw-r--r-- | crates/ide-db/src/lib.rs | 6 | ||||
| -rw-r--r-- | crates/ide-db/src/test_data/test_doc_alias.txt | 30 | ||||
| -rw-r--r-- | crates/ide-db/src/test_data/test_symbol_index_collection.txt | 138 | ||||
| -rw-r--r-- | crates/ide-db/src/test_data/test_symbols_exclude_imports.txt | 4 | ||||
| -rw-r--r-- | crates/ide-db/src/test_data/test_symbols_with_imports.txt | 8 | ||||
| -rw-r--r-- | crates/rust-analyzer/src/reload.rs | 16 |
13 files changed, 136 insertions, 124 deletions
diff --git a/crates/hir-def/src/db.rs b/crates/hir-def/src/db.rs index 1776b7c84b..9d58a5331a 100644 --- a/crates/hir-def/src/db.rs +++ b/crates/hir-def/src/db.rs @@ -4,6 +4,7 @@ use hir_expand::{ EditionedFileId, HirFileId, InFile, Lookup, MacroCallId, MacroDefId, MacroDefKind, db::ExpandDatabase, }; +use salsa::{Durability, Setter}; use triomphe::Arc; use crate::{ @@ -16,10 +17,6 @@ use crate::{ #[query_group::query_group] pub trait DefDatabase: ExpandDatabase + SourceDatabase { - /// Whether to expand procedural macros during name resolution. - #[salsa::input] - fn expand_proc_attr_macros(&self) -> bool; - /// Computes an [`ItemTree`] for the given file or macro expansion. #[salsa::invoke(file_item_tree)] #[salsa::transparent] @@ -47,6 +44,26 @@ pub trait DefDatabase: ExpandDatabase + SourceDatabase { fn include_macro_invoc(&self, crate_id: Crate) -> Arc<[(MacroCallId, EditionedFileId)]>; } +/// Whether to expand procedural macros during name resolution. +/// +/// Note: this struct shouldn't be exposed to downstream crates -- consider using +/// [`set_expand_proc_attr_macros`] instead, if possible. +#[salsa::input(singleton, debug)] +pub(crate) struct ExpandProcAttrMacros { + #[returns(copy)] + pub(crate) enabled: bool, +} + +pub fn set_expand_proc_attr_macros(db: &mut dyn DefDatabase, enabled: bool) { + if let Some(expand_proc_attr_macros) = ExpandProcAttrMacros::try_get(db) { + if expand_proc_attr_macros.enabled(db) != enabled { + expand_proc_attr_macros.set_enabled(db).with_durability(Durability::HIGH).to(enabled); + } + } else { + _ = ExpandProcAttrMacros::builder(enabled).durability(Durability::HIGH).new(db); + } +} + // return: macro call id and include file id fn include_macro_invoc( db: &dyn DefDatabase, diff --git a/crates/hir-def/src/expr_store/tests/body/block.rs b/crates/hir-def/src/expr_store/tests/body/block.rs index 906c4835c7..8b12c139f6 100644 --- a/crates/hir-def/src/expr_store/tests/body/block.rs +++ b/crates/hir-def/src/expr_store/tests/body/block.rs @@ -190,13 +190,13 @@ fn f() { "#, expect![[r#" ModuleIdLt { - [salsa id]: Id(3403), + [salsa id]: Id(3003), krate: Crate( - Id(2000), + Id(1c00), ), block: Some( BlockId( - 4401, + 4001, ), ), containing_module_inside_def_map: None, diff --git a/crates/hir-def/src/macro_expansion_tests/mbe.rs b/crates/hir-def/src/macro_expansion_tests/mbe.rs index e75c96b630..62bdebe420 100644 --- a/crates/hir-def/src/macro_expansion_tests/mbe.rs +++ b/crates/hir-def/src/macro_expansion_tests/mbe.rs @@ -35,9 +35,9 @@ macro_rules! f { }; } -struct#0:MacroRules[BE8F, 0]@58..64#17408# MyTraitMap2#0:MacroCall[BE8F, 0]@31..42#ROOT2024# {#0:MacroRules[BE8F, 0]@72..73#17408# - map#0:MacroRules[BE8F, 0]@86..89#17408#:#0:MacroRules[BE8F, 0]@89..90#17408# #0:MacroRules[BE8F, 0]@89..90#17408#::#0:MacroRules[BE8F, 0]@91..93#17408#std#0:MacroRules[BE8F, 0]@93..96#17408#::#0:MacroRules[BE8F, 0]@96..98#17408#collections#0:MacroRules[BE8F, 0]@98..109#17408#::#0:MacroRules[BE8F, 0]@109..111#17408#HashSet#0:MacroRules[BE8F, 0]@111..118#17408#<#0:MacroRules[BE8F, 0]@118..119#17408#(#0:MacroRules[BE8F, 0]@119..120#17408#)#0:MacroRules[BE8F, 0]@120..121#17408#>#0:MacroRules[BE8F, 0]@121..122#17408#,#0:MacroRules[BE8F, 0]@122..123#17408# -}#0:MacroRules[BE8F, 0]@132..133#17408# +struct#0:MacroRules[BE8F, 0]@58..64#16384# MyTraitMap2#0:MacroCall[BE8F, 0]@31..42#ROOT2024# {#0:MacroRules[BE8F, 0]@72..73#16384# + map#0:MacroRules[BE8F, 0]@86..89#16384#:#0:MacroRules[BE8F, 0]@89..90#16384# #0:MacroRules[BE8F, 0]@89..90#16384#::#0:MacroRules[BE8F, 0]@91..93#16384#std#0:MacroRules[BE8F, 0]@93..96#16384#::#0:MacroRules[BE8F, 0]@96..98#16384#collections#0:MacroRules[BE8F, 0]@98..109#16384#::#0:MacroRules[BE8F, 0]@109..111#16384#HashSet#0:MacroRules[BE8F, 0]@111..118#16384#<#0:MacroRules[BE8F, 0]@118..119#16384#(#0:MacroRules[BE8F, 0]@119..120#16384#)#0:MacroRules[BE8F, 0]@120..121#16384#>#0:MacroRules[BE8F, 0]@121..122#16384#,#0:MacroRules[BE8F, 0]@122..123#16384# +}#0:MacroRules[BE8F, 0]@132..133#16384# "#]], ); } @@ -197,7 +197,7 @@ macro_rules! mk_struct { #[macro_use] mod foo; -struct#1:MacroRules[DB0C, 0]@59..65#17408# Foo#0:MacroCall[DB0C, 0]@32..35#ROOT2024#(#1:MacroRules[DB0C, 0]@70..71#17408#u32#0:MacroCall[DB0C, 0]@41..44#ROOT2024#)#1:MacroRules[DB0C, 0]@74..75#17408#;#1:MacroRules[DB0C, 0]@75..76#17408# +struct#1:MacroRules[DB0C, 0]@59..65#16384# Foo#0:MacroCall[DB0C, 0]@32..35#ROOT2024#(#1:MacroRules[DB0C, 0]@70..71#16384#u32#0:MacroCall[DB0C, 0]@41..44#ROOT2024#)#1:MacroRules[DB0C, 0]@74..75#16384#;#1:MacroRules[DB0C, 0]@75..76#16384# "#]], ); } @@ -423,10 +423,10 @@ m! { foo, bar } macro_rules! m { ($($i:ident),*) => ( impl Bar { $(fn $i() {})* } ); } -impl#\17408# Bar#\17408# {#\17408# - fn#\17408# foo#\ROOT2024#(#\17408#)#\17408# {#\17408#}#\17408# - fn#\17408# bar#\ROOT2024#(#\17408#)#\17408# {#\17408#}#\17408# -}#\17408# +impl#\16384# Bar#\16384# {#\16384# + fn#\16384# foo#\ROOT2024#(#\16384#)#\16384# {#\16384#}#\16384# + fn#\16384# bar#\ROOT2024#(#\16384#)#\16384# {#\16384#}#\16384# +}#\16384# "#]], ); } diff --git a/crates/hir-def/src/nameres/collector.rs b/crates/hir-def/src/nameres/collector.rs index a916cda730..d52de5282b 100644 --- a/crates/hir-def/src/nameres/collector.rs +++ b/crates/hir-def/src/nameres/collector.rs @@ -616,7 +616,7 @@ impl<'db> DefCollector<'db> { let (expander, kind) = match self.proc_macros.iter().find(|(n, _, _)| n == &def.name) { Some(_) if kind == hir_expand::proc_macro::ProcMacroKind::Attr - && !self.db.expand_proc_attr_macros() => + && !crate::db::ExpandProcAttrMacros::get(self.db).enabled(self.db) => { (CustomProcMacroExpander::disabled_proc_attr(), kind) } diff --git a/crates/hir-def/src/test_db.rs b/crates/hir-def/src/test_db.rs index e3fd4560f0..7831f58046 100644 --- a/crates/hir-def/src/test_db.rs +++ b/crates/hir-def/src/test_db.rs @@ -15,7 +15,6 @@ use triomphe::Arc; use crate::{ Lookup, ModuleDefId, ModuleId, - db::DefDatabase, expr_store::{Body, scope::ExprScopes}, nameres::{DefMap, ModuleSource, block_def_map, crate_def_map}, src::HasSource, @@ -48,7 +47,7 @@ impl Default for TestDB { crates_map: Default::default(), nonce: Nonce::new(), }; - this.set_expand_proc_attr_macros_with_durability(true, Durability::HIGH); + crate::db::set_expand_proc_attr_macros(&mut this, true); // This needs to be here otherwise `CrateGraphBuilder` panics. set_all_crates_with_durability(&mut this, std::iter::empty(), Durability::HIGH); _ = base_db::LibraryRoots::builder(Default::default()) diff --git a/crates/hir-ty/src/test_db.rs b/crates/hir-ty/src/test_db.rs index 3dee592dbc..970941ce5a 100644 --- a/crates/hir-ty/src/test_db.rs +++ b/crates/hir-ty/src/test_db.rs @@ -7,7 +7,7 @@ use base_db::{ SourceRootId, SourceRootInput, all_crates, relevant_crates, set_all_crates_with_durability, }; -use hir_def::{ModuleId, db::DefDatabase, nameres::crate_def_map}; +use hir_def::{ModuleId, nameres::crate_def_map}; use hir_expand::EditionedFileId; use rustc_hash::FxHashMap; use salsa::Durability; @@ -43,7 +43,7 @@ impl Default for TestDB { crates_map: Default::default(), nonce: Nonce::new(), }; - this.set_expand_proc_attr_macros_with_durability(true, Durability::HIGH); + hir_def::db::set_expand_proc_attr_macros(&mut this, true); // This needs to be here otherwise `CrateGraphBuilder` panics. set_all_crates_with_durability(&mut this, std::iter::empty(), Durability::HIGH); _ = base_db::LibraryRoots::builder(Default::default()) diff --git a/crates/hir/src/db.rs b/crates/hir/src/db.rs index 3021ccf402..b8f271108e 100644 --- a/crates/hir/src/db.rs +++ b/crates/hir/src/db.rs @@ -3,6 +3,6 @@ //! we didn't do that. //! //! But we need this for at least LRU caching at the query level. -pub use hir_def::db::DefDatabase; +pub use hir_def::db::{DefDatabase, set_expand_proc_attr_macros}; pub use hir_expand::db::ExpandDatabase; pub use hir_ty::db::HirDatabase; diff --git a/crates/ide-db/src/lib.rs b/crates/ide-db/src/lib.rs index 87cbc7c533..f7e0547e56 100644 --- a/crates/ide-db/src/lib.rs +++ b/crates/ide-db/src/lib.rs @@ -65,7 +65,7 @@ use base_db::{ }; use hir::{ FilePositionWrapper, FileRangeWrapper, - db::{DefDatabase, ExpandDatabase, HirDatabase}, + db::{ExpandDatabase, HirDatabase}, }; use triomphe::Arc; @@ -210,13 +210,13 @@ impl RootDatabase { _ = base_db::LocalRoots::builder(Default::default()) .durability(Durability::MEDIUM) .new(&db); - db.set_expand_proc_attr_macros_with_durability(false, Durability::HIGH); + hir::db::set_expand_proc_attr_macros(&mut db, false); db.update_base_query_lru_capacities(lru_capacity); db } pub fn enable_proc_attr_macros(&mut self) { - self.set_expand_proc_attr_macros_with_durability(true, Durability::HIGH); + hir::db::set_expand_proc_attr_macros(self, true); } pub fn update_base_query_lru_capacities(&mut self, _lru_capacity: Option<u16>) { diff --git a/crates/ide-db/src/test_data/test_doc_alias.txt b/crates/ide-db/src/test_data/test_doc_alias.txt index 17d002e8bf..a959e41dbf 100644 --- a/crates/ide-db/src/test_data/test_doc_alias.txt +++ b/crates/ide-db/src/test_data/test_doc_alias.txt @@ -2,7 +2,7 @@ ( Module { id: ModuleIdLt { - [salsa id]: Id(3000), + [salsa id]: Id(2c00), }, }, [ @@ -12,7 +12,7 @@ Struct( Struct { id: StructId( - 3801, + 3401, ), }, ), @@ -20,7 +20,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -49,7 +49,7 @@ Struct( Struct { id: StructId( - 3800, + 3400, ), }, ), @@ -57,7 +57,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -86,7 +86,7 @@ Struct( Struct { id: StructId( - 3800, + 3400, ), }, ), @@ -94,7 +94,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -123,7 +123,7 @@ Struct( Struct { id: StructId( - 3800, + 3400, ), }, ), @@ -131,7 +131,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -160,7 +160,7 @@ Struct( Struct { id: StructId( - 3800, + 3400, ), }, ), @@ -168,7 +168,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -197,7 +197,7 @@ Struct( Struct { id: StructId( - 3801, + 3401, ), }, ), @@ -205,7 +205,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -234,7 +234,7 @@ Struct( Struct { id: StructId( - 3800, + 3400, ), }, ), @@ -242,7 +242,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { diff --git a/crates/ide-db/src/test_data/test_symbol_index_collection.txt b/crates/ide-db/src/test_data/test_symbol_index_collection.txt index a84f75cb4e..1b17c18f36 100644 --- a/crates/ide-db/src/test_data/test_symbol_index_collection.txt +++ b/crates/ide-db/src/test_data/test_symbol_index_collection.txt @@ -2,7 +2,7 @@ ( Module { id: ModuleIdLt { - [salsa id]: Id(3000), + [salsa id]: Id(2c00), }, }, [ @@ -11,14 +11,14 @@ def: EnumVariant( EnumVariant { id: EnumVariantId( - 7800, + 7400, ), }, ), loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -48,14 +48,14 @@ def: TypeAlias( TypeAlias { id: TypeAliasId( - 6c00, + 6800, ), }, ), loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -83,14 +83,14 @@ def: EnumVariant( EnumVariant { id: EnumVariantId( - 7801, + 7401, ), }, ), loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -120,14 +120,14 @@ def: Const( Const { id: ConstId( - 6400, + 6000, ), }, ), loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -155,14 +155,14 @@ def: Const( Const { id: ConstId( - 6402, + 6002, ), }, ), loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -191,7 +191,7 @@ Enum( Enum { id: EnumId( - 5000, + 4c00, ), }, ), @@ -199,7 +199,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -228,7 +228,7 @@ Macro { id: Macro2Id( Macro2Id( - 4c00, + 4800, ), ), }, @@ -236,7 +236,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -265,7 +265,7 @@ Macro { id: Macro2Id( Macro2Id( - 4c00, + 4800, ), ), }, @@ -273,7 +273,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -301,14 +301,14 @@ def: Static( Static { id: StaticId( - 6800, + 6400, ), }, ), loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -337,7 +337,7 @@ Struct( Struct { id: StructId( - 4801, + 4401, ), }, ), @@ -345,7 +345,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -374,7 +374,7 @@ Struct( Struct { id: StructId( - 4800, + 4400, ), }, ), @@ -382,7 +382,7 @@ loc: DeclarationLocation { hir_file_id: MacroFile( MacroCallId( - Id(4000), + Id(3c00), ), ), ptr: SyntaxNodePtr { @@ -411,7 +411,7 @@ Struct( Struct { id: StructId( - 4805, + 4405, ), }, ), @@ -419,7 +419,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -450,7 +450,7 @@ Struct( Struct { id: StructId( - 4806, + 4406, ), }, ), @@ -458,7 +458,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -489,7 +489,7 @@ Struct( Struct { id: StructId( - 4807, + 4407, ), }, ), @@ -497,7 +497,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -526,7 +526,7 @@ Struct( Struct { id: StructId( - 4802, + 4402, ), }, ), @@ -534,7 +534,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -562,14 +562,14 @@ def: Trait( Trait { id: TraitId( - 5c00, + 5800, ), }, ), loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -598,7 +598,7 @@ Macro { id: Macro2Id( Macro2Id( - 4c00, + 4800, ), ), }, @@ -606,7 +606,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -635,7 +635,7 @@ Union( Union { id: UnionId( - 5400, + 5000, ), }, ), @@ -643,7 +643,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -671,14 +671,14 @@ def: Module( Module { id: ModuleIdLt { - [salsa id]: Id(3001), + [salsa id]: Id(2c01), }, }, ), loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -706,14 +706,14 @@ def: Module( Module { id: ModuleIdLt { - [salsa id]: Id(3002), + [salsa id]: Id(2c02), }, }, ), loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -742,7 +742,7 @@ Macro { id: MacroRulesId( MacroRulesId( - 3c01, + 3801, ), ), }, @@ -750,7 +750,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -778,14 +778,14 @@ def: Function( FunctionId( FunctionId( - 6002, + 5c02, ), ), ), loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -815,14 +815,14 @@ def: Function( FunctionId( FunctionId( - 6001, + 5c01, ), ), ), loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -853,7 +853,7 @@ Macro { id: MacroRulesId( MacroRulesId( - 3c00, + 3800, ), ), }, @@ -861,7 +861,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -889,14 +889,14 @@ def: Function( FunctionId( FunctionId( - 6000, + 5c00, ), ), ), loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -925,7 +925,7 @@ Macro { id: MacroRulesId( MacroRulesId( - 3c01, + 3801, ), ), }, @@ -933,7 +933,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -961,14 +961,14 @@ def: Function( FunctionId( FunctionId( - 6003, + 5c03, ), ), ), loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -998,7 +998,7 @@ ( Module { id: ModuleIdLt { - [salsa id]: Id(3001), + [salsa id]: Id(2c01), }, }, [ @@ -1008,7 +1008,7 @@ Struct( Struct { id: StructId( - 4803, + 4403, ), }, ), @@ -1016,7 +1016,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { @@ -1044,7 +1044,7 @@ ( Module { id: ModuleIdLt { - [salsa id]: Id(3002), + [salsa id]: Id(2c02), }, }, [ @@ -1053,14 +1053,14 @@ def: Trait( Trait { id: TraitId( - 5c00, + 5800, ), }, ), loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c01), + Id(2801), ), ), ptr: SyntaxNodePtr { @@ -1089,7 +1089,7 @@ Macro { id: Macro2Id( Macro2Id( - 4c00, + 4800, ), ), }, @@ -1097,7 +1097,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c01), + Id(2801), ), ), ptr: SyntaxNodePtr { @@ -1126,7 +1126,7 @@ Struct( Struct { id: StructId( - 4804, + 4404, ), }, ), @@ -1134,7 +1134,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c01), + Id(2801), ), ), ptr: SyntaxNodePtr { @@ -1163,7 +1163,7 @@ Macro { id: Macro2Id( Macro2Id( - 4c00, + 4800, ), ), }, @@ -1171,7 +1171,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c01), + Id(2801), ), ), ptr: SyntaxNodePtr { @@ -1200,7 +1200,7 @@ Struct( Struct { id: StructId( - 4804, + 4404, ), }, ), @@ -1208,7 +1208,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c01), + Id(2801), ), ), ptr: SyntaxNodePtr { diff --git a/crates/ide-db/src/test_data/test_symbols_exclude_imports.txt b/crates/ide-db/src/test_data/test_symbols_exclude_imports.txt index f8ae687b78..03e02b3985 100644 --- a/crates/ide-db/src/test_data/test_symbols_exclude_imports.txt +++ b/crates/ide-db/src/test_data/test_symbols_exclude_imports.txt @@ -5,7 +5,7 @@ Struct( Struct { id: StructId( - 3c00, + 3800, ), }, ), @@ -13,7 +13,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c01), + Id(2801), ), ), ptr: SyntaxNodePtr { diff --git a/crates/ide-db/src/test_data/test_symbols_with_imports.txt b/crates/ide-db/src/test_data/test_symbols_with_imports.txt index 2282815a61..02b8d37958 100644 --- a/crates/ide-db/src/test_data/test_symbols_with_imports.txt +++ b/crates/ide-db/src/test_data/test_symbols_with_imports.txt @@ -5,7 +5,7 @@ Struct( Struct { id: StructId( - 3c00, + 3800, ), }, ), @@ -13,7 +13,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c01), + Id(2801), ), ), ptr: SyntaxNodePtr { @@ -42,7 +42,7 @@ Struct( Struct { id: StructId( - 3c00, + 3800, ), }, ), @@ -50,7 +50,7 @@ loc: DeclarationLocation { hir_file_id: FileId( EditionedFileId( - Id(2c00), + Id(2800), ), ), ptr: SyntaxNodePtr { diff --git a/crates/rust-analyzer/src/reload.rs b/crates/rust-analyzer/src/reload.rs index 703af40370..ace44b02fe 100644 --- a/crates/rust-analyzer/src/reload.rs +++ b/crates/rust-analyzer/src/reload.rs @@ -15,10 +15,10 @@ // FIXME: This is a mess that needs some untangling work use std::{iter, mem, sync::atomic::AtomicUsize, time::Duration}; -use hir::{ChangeWithProcMacros, ProcMacrosBuilder, db::DefDatabase}; +use hir::{ChangeWithProcMacros, ProcMacrosBuilder}; use ide_db::{ FxHashMap, - base_db::{CrateGraphBuilder, ProcMacroLoadingError, ProcMacroPaths, salsa::Durability}, + base_db::{CrateGraphBuilder, ProcMacroLoadingError, ProcMacroPaths}, }; use itertools::Itertools; use load_cargo::{ProjectFolders, load_proc_macro}; @@ -109,14 +109,10 @@ impl GlobalState { self.reload_flycheck(); } - if self.analysis_host.raw_database().expand_proc_attr_macros() - != self.config.expand_proc_attr_macros() - { - self.analysis_host.raw_database_mut().set_expand_proc_attr_macros_with_durability( - self.config.expand_proc_attr_macros(), - Durability::HIGH, - ); - } + hir::db::set_expand_proc_attr_macros( + self.analysis_host.raw_database_mut(), + self.config.expand_proc_attr_macros(), + ); if self.config.cargo(None) != old_config.cargo(None) { let req = FetchWorkspaceRequest { path: None, force_crate_graph_reload: false }; |