Skip to content

Commit 28fd228

Browse files
committed
remove query_definitions
1 parent 6596793 commit 28fd228

File tree

4 files changed

+20
-34
lines changed

4 files changed

+20
-34
lines changed

crates/ra_hir/src/db.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ use ra_db::{SourceDatabase, salsa};
66
use crate::{
77
MacroCallId, HirFileId,
88
SourceFileItems, SourceItemId, Crate, Module, HirInterner,
9-
query_definitions,
109
Function, FnSignature, ExprScopes,
1110
Struct, Enum, StructField,
1211
macros::MacroExpansion,
@@ -33,10 +32,10 @@ pub trait PersistentHirDatabase: SourceDatabase + AsRef<HirInterner> {
3332
#[salsa::invoke(crate::adt::EnumData::enum_data_query)]
3433
fn enum_data(&self, e: Enum) -> Arc<EnumData>;
3534

36-
#[salsa::invoke(query_definitions::file_items)]
35+
#[salsa::invoke(crate::ids::SourceFileItems::file_items_query)]
3736
fn file_items(&self, file_id: HirFileId) -> Arc<SourceFileItems>;
3837

39-
#[salsa::invoke(query_definitions::file_item)]
38+
#[salsa::invoke(crate::ids::SourceFileItems::file_item_query)]
4039
fn file_item(&self, source_item_id: SourceItemId) -> TreeArc<SyntaxNode>;
4140

4241
#[salsa::invoke(crate::module_tree::Submodule::submodules_query)]

crates/ra_hir/src/ids.rs

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
use std::{
22
marker::PhantomData,
33
hash::{Hash, Hasher},
4+
sync::Arc,
45
};
56

67
use ra_db::{LocationIntener, FileId};
@@ -301,10 +302,24 @@ pub struct SourceFileItems {
301302
}
302303

303304
impl SourceFileItems {
304-
pub(crate) fn new(file_id: HirFileId, source_file: &SourceFile) -> SourceFileItems {
305+
pub(crate) fn file_items_query(
306+
db: &impl PersistentHirDatabase,
307+
file_id: HirFileId,
308+
) -> Arc<SourceFileItems> {
309+
let source_file = db.hir_parse(file_id);
305310
let mut res = SourceFileItems { file_id, arena: Arena::default() };
306-
res.init(source_file);
307-
res
311+
res.init(&source_file);
312+
Arc::new(res)
313+
}
314+
315+
pub(crate) fn file_item_query(
316+
db: &impl PersistentHirDatabase,
317+
source_item_id: SourceItemId,
318+
) -> TreeArc<SyntaxNode> {
319+
let source_file = db.hir_parse(source_item_id.file_id);
320+
db.file_items(source_item_id.file_id)[source_item_id.item_id]
321+
.to_node(&source_file)
322+
.to_owned()
308323
}
309324

310325
fn init(&mut self, source_file: &SourceFile) {

crates/ra_hir/src/lib.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ macro_rules! impl_froms {
2020
pub mod db;
2121
#[macro_use]
2222
pub mod mock;
23-
mod query_definitions;
2423
mod path;
2524
pub mod source_binder;
2625

crates/ra_hir/src/query_definitions.rs

Lines changed: 0 additions & 27 deletions
This file was deleted.

0 commit comments

Comments
 (0)