]> git.lizzy.rs Git - rust.git/blobdiff - crates/ide_db/src/lib.rs
Merge #11157
[rust.git] / crates / ide_db / src / lib.rs
index 77db09315d915ceb23d8210af959837e5dbb17f0..bcbb09e31b5a33a0a6d88c1b9bcc90f1d0718e32 100644 (file)
 pub mod source_change;
 pub mod ty_filter;
 pub mod traits;
-pub mod call_info;
 pub mod helpers;
 pub mod path_transform;
 
 pub mod search;
 pub mod rename;
+pub mod active_parameter;
 
 use std::{fmt, mem::ManuallyDrop, sync::Arc};
 
@@ -145,8 +145,11 @@ fn line_index(db: &dyn LineIndexDatabase, file_id: FileId) -> Arc<LineIndex> {
 
 #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, PartialOrd, Ord)]
 pub enum SymbolKind {
+    Attribute,
+    BuiltinAttr,
     Const,
     ConstParam,
+    Derive,
     Enum,
     Field,
     Function,
@@ -159,6 +162,7 @@ pub enum SymbolKind {
     SelfParam,
     Static,
     Struct,
+    ToolModule,
     Trait,
     TypeAlias,
     TypeParam,
@@ -167,6 +171,18 @@ pub enum SymbolKind {
     Variant,
 }
 
+impl From<hir::MacroKind> for SymbolKind {
+    fn from(it: hir::MacroKind) -> Self {
+        match it {
+            hir::MacroKind::Declarative | hir::MacroKind::BuiltIn | hir::MacroKind::ProcMacro => {
+                SymbolKind::Macro
+            }
+            hir::MacroKind::Derive => SymbolKind::Derive,
+            hir::MacroKind::Attr => SymbolKind::Attribute,
+        }
+    }
+}
+
 #[cfg(test)]
 mod tests {
     mod sourcegen_lints;