Remove redundant parameter

This commit is contained in:
Natalia.Ukhorskaya
2013-07-04 12:30:30 +04:00
parent a5662fe906
commit e8faf96c41
4 changed files with 10 additions and 13 deletions
@@ -720,13 +720,12 @@ public class DescriptorResolver {
@NotNull @NotNull
public VariableDescriptor resolveLocalVariableDescriptor( public VariableDescriptor resolveLocalVariableDescriptor(
@NotNull DeclarationDescriptor containingDeclaration,
@NotNull JetScope scope, @NotNull JetScope scope,
@NotNull JetParameter parameter, @NotNull JetParameter parameter,
BindingTrace trace BindingTrace trace
) { ) {
JetType type = resolveParameterType(scope, parameter, trace); JetType type = resolveParameterType(scope, parameter, trace);
return resolveLocalVariableDescriptor(containingDeclaration, parameter, type, trace, scope); return resolveLocalVariableDescriptor(parameter, type, trace, scope);
} }
private JetType resolveParameterType(JetScope scope, JetParameter parameter, BindingTrace trace) { private JetType resolveParameterType(JetScope scope, JetParameter parameter, BindingTrace trace) {
@@ -746,14 +745,13 @@ public class DescriptorResolver {
} }
public VariableDescriptor resolveLocalVariableDescriptor( public VariableDescriptor resolveLocalVariableDescriptor(
@NotNull DeclarationDescriptor containingDeclaration,
@NotNull JetParameter parameter, @NotNull JetParameter parameter,
@NotNull JetType type, @NotNull JetType type,
BindingTrace trace, BindingTrace trace,
@NotNull JetScope scope @NotNull JetScope scope
) { ) {
VariableDescriptor variableDescriptor = new LocalVariableDescriptor( VariableDescriptor variableDescriptor = new LocalVariableDescriptor(
containingDeclaration, scope.getContainingDeclaration(),
annotationResolver.resolveAnnotationsWithArguments(scope, parameter.getModifierList(), trace), annotationResolver.resolveAnnotationsWithArguments(scope, parameter.getModifierList(), trace),
JetPsiUtil.safeName(parameter.getName()), JetPsiUtil.safeName(parameter.getName()),
type, type,
@@ -764,12 +762,12 @@ public class DescriptorResolver {
@NotNull @NotNull
public VariableDescriptor resolveLocalVariableDescriptor( public VariableDescriptor resolveLocalVariableDescriptor(
DeclarationDescriptor containingDeclaration,
JetScope scope, JetScope scope,
JetVariableDeclaration variable, JetVariableDeclaration variable,
DataFlowInfo dataFlowInfo, DataFlowInfo dataFlowInfo,
BindingTrace trace BindingTrace trace
) { ) {
DeclarationDescriptor containingDeclaration = scope.getContainingDeclaration();
if (JetPsiUtil.isScriptDeclaration(variable)) { if (JetPsiUtil.isScriptDeclaration(variable)) {
PropertyDescriptorImpl propertyDescriptor = new PropertyDescriptorImpl( PropertyDescriptorImpl propertyDescriptor = new PropertyDescriptorImpl(
containingDeclaration, containingDeclaration,
@@ -791,7 +789,7 @@ public class DescriptorResolver {
} }
else { else {
VariableDescriptorImpl variableDescriptor = VariableDescriptorImpl variableDescriptor =
resolveLocalVariableDescriptorWithType(scope, containingDeclaration, variable, null, trace); resolveLocalVariableDescriptorWithType(scope, variable, null, trace);
JetType type = JetType type =
getVariableType(variableDescriptor, scope, variable, dataFlowInfo, false, trace); // For a local variable the type must not be deferred getVariableType(variableDescriptor, scope, variable, dataFlowInfo, false, trace); // For a local variable the type must not be deferred
@@ -803,13 +801,12 @@ public class DescriptorResolver {
@NotNull @NotNull
public VariableDescriptorImpl resolveLocalVariableDescriptorWithType( public VariableDescriptorImpl resolveLocalVariableDescriptorWithType(
@NotNull JetScope scope, @NotNull JetScope scope,
@NotNull DeclarationDescriptor containingDeclaration,
@NotNull JetVariableDeclaration variable, @NotNull JetVariableDeclaration variable,
@Nullable JetType type, @Nullable JetType type,
@NotNull BindingTrace trace @NotNull BindingTrace trace
) { ) {
VariableDescriptorImpl variableDescriptor = new LocalVariableDescriptor( VariableDescriptorImpl variableDescriptor = new LocalVariableDescriptor(
containingDeclaration, scope.getContainingDeclaration(),
annotationResolver.resolveAnnotationsWithArguments(scope, variable.getModifierList(), trace), annotationResolver.resolveAnnotationsWithArguments(scope, variable.getModifierList(), trace),
JetPsiUtil.safeName(variable.getName()), JetPsiUtil.safeName(variable.getName()),
type, type,
@@ -320,7 +320,7 @@ public class ControlStructureTypingVisitor extends ExpressionTypingVisitor {
JetTypeReference typeReference = loopParameter.getTypeReference(); JetTypeReference typeReference = loopParameter.getTypeReference();
VariableDescriptor variableDescriptor; VariableDescriptor variableDescriptor;
if (typeReference != null) { if (typeReference != null) {
variableDescriptor = context.expressionTypingServices.getDescriptorResolver().resolveLocalVariableDescriptor(context.scope.getContainingDeclaration(), context.scope, loopParameter, context.trace); variableDescriptor = context.expressionTypingServices.getDescriptorResolver().resolveLocalVariableDescriptor(context.scope, loopParameter, context.trace);
JetType actualParameterType = variableDescriptor.getType(); JetType actualParameterType = variableDescriptor.getType();
if (expectedParameterType != null && if (expectedParameterType != null &&
!JetTypeChecker.INSTANCE.isSubtypeOf(expectedParameterType, actualParameterType)) { !JetTypeChecker.INSTANCE.isSubtypeOf(expectedParameterType, actualParameterType)) {
@@ -331,7 +331,7 @@ public class ControlStructureTypingVisitor extends ExpressionTypingVisitor {
if (expectedParameterType == null) { if (expectedParameterType == null) {
expectedParameterType = ErrorUtils.createErrorType("Error"); expectedParameterType = ErrorUtils.createErrorType("Error");
} }
variableDescriptor = context.expressionTypingServices.getDescriptorResolver().resolveLocalVariableDescriptor(context.scope.getContainingDeclaration(), loopParameter, expectedParameterType, context.trace, context.scope); variableDescriptor = context.expressionTypingServices.getDescriptorResolver().resolveLocalVariableDescriptor(loopParameter, expectedParameterType, context.trace, context.scope);
} }
{ {
@@ -433,7 +433,7 @@ public class ControlStructureTypingVisitor extends ExpressionTypingVisitor {
DescriptorResolver.checkParameterHasNoValOrVar(context.trace, catchParameter, VAL_OR_VAR_ON_CATCH_PARAMETER); DescriptorResolver.checkParameterHasNoValOrVar(context.trace, catchParameter, VAL_OR_VAR_ON_CATCH_PARAMETER);
VariableDescriptor variableDescriptor = context.expressionTypingServices.getDescriptorResolver().resolveLocalVariableDescriptor( VariableDescriptor variableDescriptor = context.expressionTypingServices.getDescriptorResolver().resolveLocalVariableDescriptor(
context.scope.getContainingDeclaration(), context.scope, catchParameter, context.trace); context.scope, catchParameter, context.trace);
JetType throwableType = KotlinBuiltIns.getInstance().getThrowable().getDefaultType(); JetType throwableType = KotlinBuiltIns.getInstance().getThrowable().getDefaultType();
DataFlowUtils.checkType(variableDescriptor.getType(), catchParameter, context.replaceExpectedType(throwableType)); DataFlowUtils.checkType(variableDescriptor.getType(), catchParameter, context.replaceExpectedType(throwableType));
if (catchBody != null) { if (catchBody != null) {
@@ -423,7 +423,7 @@ public class ExpressionTypingUtils {
componentType = ErrorUtils.createErrorType(componentName + "() return type"); componentType = ErrorUtils.createErrorType(componentName + "() return type");
} }
VariableDescriptor variableDescriptor = context.expressionTypingServices.getDescriptorResolver(). VariableDescriptor variableDescriptor = context.expressionTypingServices.getDescriptorResolver().
resolveLocalVariableDescriptorWithType(writableScope, writableScope.getContainingDeclaration(), entry, componentType, context.trace); resolveLocalVariableDescriptorWithType(writableScope, entry, componentType, context.trace);
VariableDescriptor olderVariable = writableScope.getLocalVariable(variableDescriptor.getName()); VariableDescriptor olderVariable = writableScope.getLocalVariable(variableDescriptor.getName());
checkVariableShadowing(context, variableDescriptor, olderVariable); checkVariableShadowing(context, variableDescriptor, olderVariable);
@@ -119,7 +119,7 @@ public class ExpressionTypingVisitorForStatements extends ExpressionTypingVisito
} }
VariableDescriptor propertyDescriptor = context.expressionTypingServices.getDescriptorResolver(). VariableDescriptor propertyDescriptor = context.expressionTypingServices.getDescriptorResolver().
resolveLocalVariableDescriptor(scope.getContainingDeclaration(), scope, property, context.dataFlowInfo, context.trace); resolveLocalVariableDescriptor(scope, property, context.dataFlowInfo, context.trace);
JetExpression initializer = property.getInitializer(); JetExpression initializer = property.getInitializer();
DataFlowInfo dataFlowInfo = context.dataFlowInfo; DataFlowInfo dataFlowInfo = context.dataFlowInfo;
if (initializer != null) { if (initializer != null) {