aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir/src/expr/validation.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/ra_hir/src/expr/validation.rs')
-rw-r--r--crates/ra_hir/src/expr/validation.rs7
1 files changed, 3 insertions, 4 deletions
diff --git a/crates/ra_hir/src/expr/validation.rs b/crates/ra_hir/src/expr/validation.rs
index c985dbdad..030ec53a2 100644
--- a/crates/ra_hir/src/expr/validation.rs
+++ b/crates/ra_hir/src/expr/validation.rs
@@ -4,14 +4,13 @@ use ra_syntax::ast;
4use rustc_hash::FxHashSet; 4use rustc_hash::FxHashSet;
5 5
6use crate::{ 6use crate::{
7 adt::AdtDef,
8 db::HirDatabase, 7 db::HirDatabase,
9 diagnostics::{DiagnosticSink, MissingFields, MissingOkInTailExpr}, 8 diagnostics::{DiagnosticSink, MissingFields, MissingOkInTailExpr},
10 expr::AstPtr, 9 expr::AstPtr,
11 name, 10 name,
12 path::{PathKind, PathSegment}, 11 path::{PathKind, PathSegment},
13 ty::{ApplicationTy, InferenceResult, Ty, TypeCtor}, 12 ty::{ApplicationTy, InferenceResult, Ty, TypeCtor},
14 Function, Name, Path, 13 Adt, Function, Name, Path,
15}; 14};
16 15
17use super::{Expr, ExprId, RecordLitField}; 16use super::{Expr, ExprId, RecordLitField};
@@ -59,7 +58,7 @@ impl<'a, 'b> ExprValidator<'a, 'b> {
59 } 58 }
60 59
61 let struct_def = match self.infer[id].as_adt() { 60 let struct_def = match self.infer[id].as_adt() {
62 Some((AdtDef::Struct(s), _)) => s, 61 Some((Adt::Struct(s), _)) => s,
63 _ => return, 62 _ => return,
64 }; 63 };
65 64
@@ -124,7 +123,7 @@ impl<'a, 'b> ExprValidator<'a, 'b> {
124 _ => return, 123 _ => return,
125 }; 124 };
126 125
127 let std_result_ctor = TypeCtor::Adt(AdtDef::Enum(std_result_enum)); 126 let std_result_ctor = TypeCtor::Adt(Adt::Enum(std_result_enum));
128 let params = match &mismatch.expected { 127 let params = match &mismatch.expected {
129 Ty::Apply(ApplicationTy { ctor, parameters }) if ctor == &std_result_ctor => parameters, 128 Ty::Apply(ApplicationTy { ctor, parameters }) if ctor == &std_result_ctor => parameters,
130 _ => return, 129 _ => return,