From 12ef42b6ae58fb82cfe5fc4915e7936cd0f55511 Mon Sep 17 00:00:00 2001 From: Svetlana Isakova Date: Thu, 6 Jun 2013 16:30:43 +0400 Subject: [PATCH] small refactoring --- .../jet/lang/resolve/BodyResolver.java | 28 ++++++++++--------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/BodyResolver.java b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/BodyResolver.java index 2a050a21880..02355cdc21d 100644 --- a/compiler/frontend/src/org/jetbrains/jet/lang/resolve/BodyResolver.java +++ b/compiler/frontend/src/org/jetbrains/jet/lang/resolve/BodyResolver.java @@ -551,20 +551,21 @@ public class BodyResolver { } addConstraintForThisValue(constraintSystem, descriptor); } - if (propertyDescriptor.isVar()) { - OverloadResolutionResults setMethodResults = - DelegatedPropertyUtils.getDelegatedPropertyConventionMethod( - propertyDescriptor, delegateExpression, returnType, expressionTypingServices, - traceToResolveConventionMethods, accessorScope, false); + if (!propertyDescriptor.isVar()) return; - if (conventionMethodFound(setMethodResults)) { - FunctionDescriptor descriptor = setMethodResults.getResultingDescriptor(); - List valueParameters = descriptor.getValueParameters(); - if (valueParameters.size() == 3) { - ValueParameterDescriptor valueParameterForThis = valueParameters.get(2); - constraintSystem.addSubtypeConstraint(expectedType, valueParameterForThis.getType(), ConstraintPosition.FROM_COMPLETER); - addConstraintForThisValue(constraintSystem, descriptor); - } + OverloadResolutionResults setMethodResults = + DelegatedPropertyUtils.getDelegatedPropertyConventionMethod( + propertyDescriptor, delegateExpression, returnType, expressionTypingServices, + traceToResolveConventionMethods, accessorScope, false); + + if (conventionMethodFound(setMethodResults)) { + FunctionDescriptor descriptor = setMethodResults.getResultingDescriptor(); + List valueParameters = descriptor.getValueParameters(); + if (valueParameters.size() == 3) { + ValueParameterDescriptor valueParameterForThis = valueParameters.get(2); + + constraintSystem.addSubtypeConstraint(expectedType, valueParameterForThis.getType(), ConstraintPosition.FROM_COMPLETER); + addConstraintForThisValue(constraintSystem, descriptor); } } } @@ -585,6 +586,7 @@ public class BodyResolver { List valueParameters = resultingDescriptor.getValueParameters(); if (valueParameters.isEmpty()) return; ValueParameterDescriptor valueParameterForThis = valueParameters.get(0); + constraintSystem.addSubtypeConstraint(typeOfThis, valueParameterForThis.getType(), ConstraintPosition.FROM_COMPLETER); } };