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 | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/crates/ide_db/src/lib.rs b/crates/ide_db/src/lib.rs index bcbb09e31b..602eaf0de5 100644 --- a/crates/ide_db/src/lib.rs +++ b/crates/ide_db/src/lib.rs @@ -26,7 +26,10 @@ use base_db::{ salsa::{self, Durability}, AnchoredPath, CrateId, FileId, FileLoader, FileLoaderDelegate, SourceDatabase, Upcast, }; -use hir::db::{AstDatabase, DefDatabase, HirDatabase}; +use hir::{ + db::{AstDatabase, DefDatabase, HirDatabase}, + symbols::FileSymbolKind, +}; use rustc_hash::FxHashSet; use crate::{line_index::LineIndex, symbol_index::SymbolsDatabase}; @@ -183,6 +186,23 @@ impl From<hir::MacroKind> for SymbolKind { } } +impl From<FileSymbolKind> for SymbolKind { + fn from(it: FileSymbolKind) -> Self { + match it { + FileSymbolKind::Const => SymbolKind::Const, + FileSymbolKind::Enum => SymbolKind::Enum, + FileSymbolKind::Function => SymbolKind::Function, + FileSymbolKind::Macro => SymbolKind::Macro, + FileSymbolKind::Module => SymbolKind::Module, + FileSymbolKind::Static => SymbolKind::Static, + FileSymbolKind::Struct => SymbolKind::Struct, + FileSymbolKind::Trait => SymbolKind::Trait, + FileSymbolKind::TypeAlias => SymbolKind::TypeAlias, + FileSymbolKind::Union => SymbolKind::Union, + } + } +} + #[cfg(test)] mod tests { mod sourcegen_lints; |