show names for record fields in enum completion

This commit is contained in:
adamrk 2020-02-15 21:48:20 +01:00
parent b2b94cbf71
commit 04aff742b1
4 changed files with 109 additions and 7 deletions

View file

@ -3,6 +3,7 @@ use std::sync::Arc;
use either::Either;
use hir_def::{
adt::StructKind,
adt::VariantData,
builtin_type::BuiltinType,
docs::Documentation,
@ -424,6 +425,10 @@ impl EnumVariant {
.collect()
}
pub fn kind(self, db: &impl HirDatabase) -> StructKind {
self.variant_data(db).kind()
}
pub(crate) fn variant_data(self, db: &impl DefDatabase) -> Arc<VariantData> {
db.enum_data(self.parent.id).variants[self.id].variant_data.clone()
}