diff options
author | Benjamin Coenen <[email protected]> | 2020-04-07 16:58:05 +0100 |
---|---|---|
committer | Benjamin Coenen <[email protected]> | 2020-04-07 16:58:05 +0100 |
commit | ab864ed259c10ff51f7c9c3421d098eeea7b0245 (patch) | |
tree | a6451a9ddd7774d02974cc1dca6fbf76c8d4bb1c /crates/ra_hir_ty/src/expr.rs | |
parent | f6d688d13070a54b288486900a30680d013c66ca (diff) |
feat: add attributes support on struct fields #3870
Signed-off-by: Benjamin Coenen <[email protected]>
Diffstat (limited to 'crates/ra_hir_ty/src/expr.rs')
-rw-r--r-- | crates/ra_hir_ty/src/expr.rs | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/crates/ra_hir_ty/src/expr.rs b/crates/ra_hir_ty/src/expr.rs index b7b476b4c..eb1209d08 100644 --- a/crates/ra_hir_ty/src/expr.rs +++ b/crates/ra_hir_ty/src/expr.rs | |||
@@ -8,8 +8,7 @@ use hir_def::{ | |||
8 | AdtId, FunctionId, | 8 | AdtId, FunctionId, |
9 | }; | 9 | }; |
10 | use hir_expand::{diagnostics::DiagnosticSink, name::Name}; | 10 | use hir_expand::{diagnostics::DiagnosticSink, name::Name}; |
11 | use ra_syntax::ast; | 11 | use ra_syntax::{ast, AstPtr}; |
12 | use ra_syntax::AstPtr; | ||
13 | use rustc_hash::FxHashSet; | 12 | use rustc_hash::FxHashSet; |
14 | 13 | ||
15 | use crate::{ | 14 | use crate::{ |
@@ -82,7 +81,14 @@ impl<'a, 'b> ExprValidator<'a, 'b> { | |||
82 | 81 | ||
83 | let variant_data = variant_data(db.upcast(), variant_def); | 82 | let variant_data = variant_data(db.upcast(), variant_def); |
84 | 83 | ||
85 | let lit_fields: FxHashSet<_> = fields.iter().map(|f| &f.name).collect(); | 84 | let lit_fields: FxHashSet<_> = fields |
85 | .iter() | ||
86 | .filter_map(|f| { | ||
87 | // TODO: check if cfg_is_enabled with .attrs ? | ||
88 | |||
89 | Some(&f.name) | ||
90 | }) | ||
91 | .collect(); | ||
86 | let missed_fields: Vec<Name> = variant_data | 92 | let missed_fields: Vec<Name> = variant_data |
87 | .fields() | 93 | .fields() |
88 | .iter() | 94 | .iter() |