1
Fork 0

suggest path for tuple struct

This commit is contained in:
Takayuki Maeda 2021-09-27 16:28:38 +09:00
parent b2804655f5
commit 564cb87e27
3 changed files with 52 additions and 1 deletions

View file

@ -1026,9 +1026,15 @@ impl<'a: 'ast, 'ast> LateResolutionVisitor<'a, '_, 'ast> {
self.suggest_using_enum_variant(err, source, def_id, span);
}
(Res::Def(DefKind::Struct, def_id), _) if ns == ValueNS => {
(Res::Def(DefKind::Struct, def_id), source) if ns == ValueNS => {
let (ctor_def, ctor_vis, fields) =
if let Some(struct_ctor) = self.r.struct_constructors.get(&def_id).cloned() {
if let PathSource::Expr(Some(parent)) = source {
if let ExprKind::Field(..) | ExprKind::MethodCall(..) = parent.kind {
bad_struct_syntax_suggestion(def_id);
return true;
}
}
struct_ctor
} else {
bad_struct_syntax_suggestion(def_id);