diff options
Diffstat (limited to 'crates/ra_hir/src/source_binder.rs')
-rw-r--r-- | crates/ra_hir/src/source_binder.rs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/crates/ra_hir/src/source_binder.rs b/crates/ra_hir/src/source_binder.rs index b9d3a1713..0de36abd1 100644 --- a/crates/ra_hir/src/source_binder.rs +++ b/crates/ra_hir/src/source_binder.rs | |||
@@ -214,17 +214,17 @@ impl SourceAnalyzer { | |||
214 | 214 | ||
215 | pub fn resolve_method_call(&self, call: &ast::MethodCallExpr) -> Option<Function> { | 215 | pub fn resolve_method_call(&self, call: &ast::MethodCallExpr) -> Option<Function> { |
216 | let expr_id = self.expr_id(&call.clone().into())?; | 216 | let expr_id = self.expr_id(&call.clone().into())?; |
217 | self.infer.as_ref()?.method_resolution(expr_id) | 217 | self.infer.as_ref()?.method_resolution(expr_id).map(Function::from) |
218 | } | 218 | } |
219 | 219 | ||
220 | pub fn resolve_field(&self, field: &ast::FieldExpr) -> Option<crate::StructField> { | 220 | pub fn resolve_field(&self, field: &ast::FieldExpr) -> Option<crate::StructField> { |
221 | let expr_id = self.expr_id(&field.clone().into())?; | 221 | let expr_id = self.expr_id(&field.clone().into())?; |
222 | self.infer.as_ref()?.field_resolution(expr_id) | 222 | self.infer.as_ref()?.field_resolution(expr_id).map(|it| it.into()) |
223 | } | 223 | } |
224 | 224 | ||
225 | pub fn resolve_record_field(&self, field: &ast::RecordField) -> Option<crate::StructField> { | 225 | pub fn resolve_record_field(&self, field: &ast::RecordField) -> Option<crate::StructField> { |
226 | let expr_id = self.expr_id(&field.expr()?)?; | 226 | let expr_id = self.expr_id(&field.expr()?)?; |
227 | self.infer.as_ref()?.record_field_resolution(expr_id) | 227 | self.infer.as_ref()?.record_field_resolution(expr_id).map(|it| it.into()) |
228 | } | 228 | } |
229 | 229 | ||
230 | pub fn resolve_record_literal(&self, record_lit: &ast::RecordLit) -> Option<crate::VariantDef> { | 230 | pub fn resolve_record_literal(&self, record_lit: &ast::RecordLit) -> Option<crate::VariantDef> { |