diff options
author | Ekaterina Babshukova <[email protected]> | 2019-07-12 17:56:18 +0100 |
---|---|---|
committer | Ekaterina Babshukova <[email protected]> | 2019-07-12 18:31:49 +0100 |
commit | 2a1e11b36fe90460b139f2f6aee034f63e8252bf (patch) | |
tree | 8275d86d2d105a2bd2a5d601af9b6372a523107d /crates/ra_hir/src/adt.rs | |
parent | 8bb81d7418dbc4c295d31d261441b67dba4c0f76 (diff) |
complete fields in enum variants
Diffstat (limited to 'crates/ra_hir/src/adt.rs')
-rw-r--r-- | crates/ra_hir/src/adt.rs | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/crates/ra_hir/src/adt.rs b/crates/ra_hir/src/adt.rs index 5a3ea5f55..8afdac801 100644 --- a/crates/ra_hir/src/adt.rs +++ b/crates/ra_hir/src/adt.rs | |||
@@ -185,6 +185,13 @@ pub enum VariantDef { | |||
185 | impl_froms!(VariantDef: Struct, EnumVariant); | 185 | impl_froms!(VariantDef: Struct, EnumVariant); |
186 | 186 | ||
187 | impl VariantDef { | 187 | impl VariantDef { |
188 | pub fn fields(self, db: &impl HirDatabase) -> Vec<StructField> { | ||
189 | match self { | ||
190 | VariantDef::Struct(it) => it.fields(db), | ||
191 | VariantDef::EnumVariant(it) => it.fields(db), | ||
192 | } | ||
193 | } | ||
194 | |||
188 | pub(crate) fn field(self, db: &impl HirDatabase, name: &Name) -> Option<StructField> { | 195 | pub(crate) fn field(self, db: &impl HirDatabase, name: &Name) -> Option<StructField> { |
189 | match self { | 196 | match self { |
190 | VariantDef::Struct(it) => it.field(db, name), | 197 | VariantDef::Struct(it) => it.field(db, name), |