diff options
Diffstat (limited to 'crates/ra_hir_def/src/type_alias.rs')
-rw-r--r-- | crates/ra_hir_def/src/type_alias.rs | 27 |
1 files changed, 0 insertions, 27 deletions
diff --git a/crates/ra_hir_def/src/type_alias.rs b/crates/ra_hir_def/src/type_alias.rs deleted file mode 100644 index c0b49aa7c..000000000 --- a/crates/ra_hir_def/src/type_alias.rs +++ /dev/null | |||
@@ -1,27 +0,0 @@ | |||
1 | //! HIR for type aliases (i.e. the `type` keyword). | ||
2 | |||
3 | use std::sync::Arc; | ||
4 | |||
5 | use hir_expand::name::{AsName, Name}; | ||
6 | |||
7 | use ra_syntax::ast::NameOwner; | ||
8 | |||
9 | use crate::{db::DefDatabase2, type_ref::TypeRef, HasSource, Lookup, TypeAliasId}; | ||
10 | |||
11 | #[derive(Debug, Clone, PartialEq, Eq)] | ||
12 | pub struct TypeAliasData { | ||
13 | pub name: Name, | ||
14 | pub type_ref: Option<TypeRef>, | ||
15 | } | ||
16 | |||
17 | impl TypeAliasData { | ||
18 | pub(crate) fn type_alias_data_query( | ||
19 | db: &impl DefDatabase2, | ||
20 | typ: TypeAliasId, | ||
21 | ) -> Arc<TypeAliasData> { | ||
22 | let node = typ.lookup(db).source(db).value; | ||
23 | let name = node.name().map_or_else(Name::missing, |n| n.as_name()); | ||
24 | let type_ref = node.type_ref().map(TypeRef::from_ast); | ||
25 | Arc::new(TypeAliasData { name, type_ref }) | ||
26 | } | ||
27 | } | ||