diff options
author | Aleksey Kladov <[email protected]> | 2019-01-23 16:49:11 +0000 |
---|---|---|
committer | Aleksey Kladov <[email protected]> | 2019-01-23 16:49:11 +0000 |
commit | 59f830d3e8999691f5e3140cf45494fe7cc46ac4 (patch) | |
tree | 393cb0a63eba938a3f3bb1ffa7150697b7e071ba /crates/ra_hir/src/ids.rs | |
parent | 118e11e50b5f39aca88e2ed342e5d355d4f32c00 (diff) |
assign DefIds when lowering
Diffstat (limited to 'crates/ra_hir/src/ids.rs')
-rw-r--r-- | crates/ra_hir/src/ids.rs | 21 |
1 files changed, 2 insertions, 19 deletions
diff --git a/crates/ra_hir/src/ids.rs b/crates/ra_hir/src/ids.rs index c5408e277..b93b7f397 100644 --- a/crates/ra_hir/src/ids.rs +++ b/crates/ra_hir/src/ids.rs | |||
@@ -1,9 +1,9 @@ | |||
1 | use ra_db::{SourceRootId, LocationIntener, FileId}; | 1 | use ra_db::{SourceRootId, LocationIntener, FileId}; |
2 | use ra_syntax::{TreeArc, SyntaxKind, SyntaxNode, SourceFile, AstNode, ast}; | 2 | use ra_syntax::{TreeArc, SyntaxNode, SourceFile, AstNode, ast}; |
3 | use ra_arena::{Arena, RawId, impl_arena_id}; | 3 | use ra_arena::{Arena, RawId, impl_arena_id}; |
4 | 4 | ||
5 | use crate::{ | 5 | use crate::{ |
6 | HirDatabase, PerNs, Def, Function, Struct, Enum, EnumVariant, ImplBlock, Crate, | 6 | HirDatabase, Def, Function, Struct, Enum, EnumVariant, ImplBlock, Crate, |
7 | Module, Trait, Type, Static, Const, | 7 | Module, Trait, Type, Static, Const, |
8 | module_tree::ModuleId, | 8 | module_tree::ModuleId, |
9 | }; | 9 | }; |
@@ -238,23 +238,6 @@ impl DefLoc { | |||
238 | } | 238 | } |
239 | } | 239 | } |
240 | 240 | ||
241 | impl DefKind { | ||
242 | pub(crate) fn for_syntax_kind(kind: SyntaxKind) -> PerNs<DefKind> { | ||
243 | match kind { | ||
244 | SyntaxKind::FN_DEF => PerNs::values(DefKind::Function), | ||
245 | SyntaxKind::MODULE => PerNs::types(DefKind::Module), | ||
246 | SyntaxKind::STRUCT_DEF => PerNs::both(DefKind::Struct, DefKind::StructCtor), | ||
247 | SyntaxKind::ENUM_DEF => PerNs::types(DefKind::Enum), | ||
248 | // These define items, but don't have their own DefKinds yet: | ||
249 | SyntaxKind::TRAIT_DEF => PerNs::types(DefKind::Trait), | ||
250 | SyntaxKind::TYPE_DEF => PerNs::types(DefKind::Type), | ||
251 | SyntaxKind::CONST_DEF => PerNs::values(DefKind::Const), | ||
252 | SyntaxKind::STATIC_DEF => PerNs::values(DefKind::Static), | ||
253 | _ => PerNs::none(), | ||
254 | } | ||
255 | } | ||
256 | } | ||
257 | |||
258 | /// Identifier of item within a specific file. This is stable over reparses, so | 241 | /// Identifier of item within a specific file. This is stable over reparses, so |
259 | /// it's OK to use it as a salsa key/value. | 242 | /// it's OK to use it as a salsa key/value. |
260 | #[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] | 243 | #[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)] |