Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/ide_db/src/lib.rs')
| -rw-r--r-- | crates/ide_db/src/lib.rs | 66 |
1 files changed, 48 insertions, 18 deletions
diff --git a/crates/ide_db/src/lib.rs b/crates/ide_db/src/lib.rs index 3f64c0a124..b11b70d127 100644 --- a/crates/ide_db/src/lib.rs +++ b/crates/ide_db/src/lib.rs @@ -4,21 +4,38 @@ mod apply_change; +pub mod active_parameter; pub mod assists; -pub mod label; -pub mod line_index; -pub mod symbol_index; pub mod defs; +pub mod famous_defs; +pub mod helpers; pub mod items_locator; +pub mod label; +pub mod line_index; +pub mod path_transform; +pub mod rename; +pub mod rust_doc; +pub mod search; pub mod source_change; -pub mod ty_filter; +pub mod symbol_index; pub mod traits; -pub mod helpers; -pub mod path_transform; +pub mod ty_filter; -pub mod search; -pub mod rename; -pub mod active_parameter; +pub mod imports { + pub mod import_assets; + pub mod insert_use; + pub mod merge_imports; +} + +pub mod generated { + pub mod lints; +} + +pub mod syntax_helpers { + pub mod node_ext; + pub mod insert_whitespace_into_node; + pub mod format_string; +} use std::{fmt, mem::ManuallyDrop, sync::Arc}; @@ -42,14 +59,14 @@ pub type FxIndexMap<K, V> = indexmap::IndexMap<K, V, std::hash::BuildHasherDefault<rustc_hash::FxHasher>>; #[salsa::database( - base_db::SourceDatabaseStorage, base_db::SourceDatabaseExtStorage, - LineIndexDatabaseStorage, - symbol_index::SymbolsDatabaseStorage, - hir::db::InternDatabaseStorage, + base_db::SourceDatabaseStorage, hir::db::AstDatabaseStorage, hir::db::DefDatabaseStorage, - hir::db::HirDatabaseStorage + hir::db::HirDatabaseStorage, + hir::db::InternDatabaseStorage, + LineIndexDatabaseStorage, + symbol_index::SymbolsDatabaseStorage )] pub struct RootDatabase { // We use `ManuallyDrop` here because every codegen unit that contains a @@ -61,9 +78,7 @@ pub struct RootDatabase { impl Drop for RootDatabase { fn drop(&mut self) { - unsafe { - ManuallyDrop::drop(&mut self.storage); - } + unsafe { ManuallyDrop::drop(&mut self.storage) }; } } @@ -117,7 +132,7 @@ impl RootDatabase { db.set_crate_graph_with_durability(Default::default(), Durability::HIGH); db.set_local_roots_with_durability(Default::default(), Durability::HIGH); db.set_library_roots_with_durability(Default::default(), Durability::HIGH); - db.set_enable_proc_attr_macros(Default::default()); + db.set_enable_proc_attr_macros(false); db.update_lru_capacity(lru_capacity); db } @@ -204,6 +219,21 @@ impl From<FileSymbolKind> for SymbolKind { } } +#[derive(Clone, Copy, Debug, PartialEq, Eq)] +pub struct SnippetCap { + _private: (), +} + +impl SnippetCap { + pub const fn new(allow_snippets: bool) -> Option<SnippetCap> { + if allow_snippets { + Some(SnippetCap { _private: () }) + } else { + None + } + } +} + #[cfg(test)] mod tests { mod sourcegen_lints; |