added ? as type argument to avoid raw types

to CallResolutionContext
This commit is contained in:
Svetlana Isakova
2013-04-01 20:02:08 +04:00
parent 12c0a2cb77
commit d57003dece
3 changed files with 12 additions and 12 deletions
@@ -85,11 +85,11 @@ public class ArgumentTypeResolver {
return KotlinBuiltIns.getInstance().isFunctionOrExtensionFunctionType(supertype) || ErrorUtils.isErrorType(supertype); return KotlinBuiltIns.getInstance().isFunctionOrExtensionFunctionType(supertype) || ErrorUtils.isErrorType(supertype);
} }
public void checkTypesWithNoCallee(@NotNull CallResolutionContext context) { public void checkTypesWithNoCallee(@NotNull CallResolutionContext<?> context) {
checkTypesWithNoCallee(context, SKIP_FUNCTION_ARGUMENTS); checkTypesWithNoCallee(context, SKIP_FUNCTION_ARGUMENTS);
} }
public void checkTypesWithNoCallee(@NotNull CallResolutionContext context, @NotNull ResolveArgumentsMode resolveFunctionArgumentBodies) { public void checkTypesWithNoCallee(@NotNull CallResolutionContext<?> context, @NotNull ResolveArgumentsMode resolveFunctionArgumentBodies) {
for (ValueArgument valueArgument : context.call.getValueArguments()) { for (ValueArgument valueArgument : context.call.getValueArguments()) {
JetExpression argumentExpression = valueArgument.getArgumentExpression(); JetExpression argumentExpression = valueArgument.getArgumentExpression();
if (argumentExpression != null && !(argumentExpression instanceof JetFunctionLiteralExpression)) { if (argumentExpression != null && !(argumentExpression instanceof JetFunctionLiteralExpression)) {
@@ -112,7 +112,7 @@ public class ArgumentTypeResolver {
} }
} }
public void checkTypesForFunctionArgumentsWithNoCallee(@NotNull CallResolutionContext context) { public void checkTypesForFunctionArgumentsWithNoCallee(@NotNull CallResolutionContext<?> context) {
for (ValueArgument valueArgument : context.call.getValueArguments()) { for (ValueArgument valueArgument : context.call.getValueArguments()) {
JetExpression argumentExpression = valueArgument.getArgumentExpression(); JetExpression argumentExpression = valueArgument.getArgumentExpression();
if (argumentExpression != null && (argumentExpression instanceof JetFunctionLiteralExpression)) { if (argumentExpression != null && (argumentExpression instanceof JetFunctionLiteralExpression)) {
@@ -125,7 +125,7 @@ public class ArgumentTypeResolver {
} }
} }
public void checkUnmappedArgumentTypes(CallResolutionContext context, Set<ValueArgument> unmappedArguments) { public void checkUnmappedArgumentTypes(CallResolutionContext<?> context, Set<ValueArgument> unmappedArguments) {
for (ValueArgument valueArgument : unmappedArguments) { for (ValueArgument valueArgument : unmappedArguments) {
JetExpression argumentExpression = valueArgument.getArgumentExpression(); JetExpression argumentExpression = valueArgument.getArgumentExpression();
if (argumentExpression != null) { if (argumentExpression != null) {
@@ -134,7 +134,7 @@ public class ArgumentTypeResolver {
} }
} }
public <D extends CallableDescriptor> void checkTypesForFunctionArguments(CallResolutionContext context, ResolvedCallImpl<D> resolvedCall) { public <D extends CallableDescriptor> void checkTypesForFunctionArguments(CallResolutionContext<?> context, ResolvedCallImpl<D> resolvedCall) {
Map<ValueParameterDescriptor, ResolvedValueArgument> arguments = resolvedCall.getValueArguments(); Map<ValueParameterDescriptor, ResolvedValueArgument> arguments = resolvedCall.getValueArguments();
for (Map.Entry<ValueParameterDescriptor, ResolvedValueArgument> entry : arguments.entrySet()) { for (Map.Entry<ValueParameterDescriptor, ResolvedValueArgument> entry : arguments.entrySet()) {
ValueParameterDescriptor valueParameterDescriptor = entry.getKey(); ValueParameterDescriptor valueParameterDescriptor = entry.getKey();
@@ -160,7 +160,7 @@ public class ArgumentTypeResolver {
@NotNull @NotNull
public JetTypeInfo getArgumentTypeInfo( public JetTypeInfo getArgumentTypeInfo(
@Nullable JetExpression expression, @Nullable JetExpression expression,
@NotNull CallResolutionContext context, @NotNull CallResolutionContext<?> context,
@NotNull ResolveArgumentsMode resolveArgumentsMode, @NotNull ResolveArgumentsMode resolveArgumentsMode,
@Nullable TemporaryBindingTrace traceToCommitForCall @Nullable TemporaryBindingTrace traceToCommitForCall
) { ) {
@@ -202,7 +202,7 @@ public class ArgumentTypeResolver {
@NotNull @NotNull
public JetTypeInfo getFunctionLiteralTypeInfo( public JetTypeInfo getFunctionLiteralTypeInfo(
@NotNull JetFunctionLiteralExpression functionLiteralExpression, @NotNull JetFunctionLiteralExpression functionLiteralExpression,
@NotNull CallResolutionContext context, @NotNull CallResolutionContext<?> context,
@NotNull ResolveArgumentsMode resolveArgumentsMode @NotNull ResolveArgumentsMode resolveArgumentsMode
) { ) {
if (resolveArgumentsMode == SKIP_FUNCTION_ARGUMENTS) { if (resolveArgumentsMode == SKIP_FUNCTION_ARGUMENTS) {
@@ -59,7 +59,7 @@ public class CallResolverUtil {
private CallResolverUtil() {} private CallResolverUtil() {}
public static <D extends CallableDescriptor> ResolvedCallImpl<D> copy(@NotNull ResolvedCallImpl<D> call, @NotNull CallResolutionContext context) { public static <D extends CallableDescriptor> ResolvedCallImpl<D> copy(@NotNull ResolvedCallImpl<D> call, @NotNull CallResolutionContext<?> context) {
ResolutionCandidate<D> candidate = ResolutionCandidate.create(call.getCandidateDescriptor(), call.getThisObject(), ResolutionCandidate<D> candidate = ResolutionCandidate.create(call.getCandidateDescriptor(), call.getThisObject(),
call.getReceiverArgument(), call.getExplicitReceiverKind(), call.getReceiverArgument(), call.getExplicitReceiverKind(),
call.isSafeCall()); call.isSafeCall());
@@ -472,12 +472,12 @@ public class CandidateResolver {
return OTHER_ERROR.combine(argumentsStatus); return OTHER_ERROR.combine(argumentsStatus);
} }
private <D extends CallableDescriptor> void addConstraintForValueArgument( private void addConstraintForValueArgument(
@NotNull ValueArgument valueArgument, @NotNull ValueArgument valueArgument,
@NotNull ValueParameterDescriptor valueParameterDescriptor, @NotNull ValueParameterDescriptor valueParameterDescriptor,
@NotNull TypeSubstitutor substitutor, @NotNull TypeSubstitutor substitutor,
@NotNull ConstraintSystem constraintSystem, @NotNull ConstraintSystem constraintSystem,
@NotNull CallCandidateResolutionContext<D> context, @NotNull CallCandidateResolutionContext<?> context,
@Nullable boolean[] isErrorType, @Nullable boolean[] isErrorType,
@NotNull CallResolverUtil.ResolveArgumentsMode resolveFunctionArgumentBodies) { @NotNull CallResolverUtil.ResolveArgumentsMode resolveFunctionArgumentBodies) {
@@ -486,7 +486,7 @@ public class CandidateResolver {
TemporaryBindingTrace traceToResolveArgument = TemporaryBindingTrace.create( TemporaryBindingTrace traceToResolveArgument = TemporaryBindingTrace.create(
context.trace, "transient trace to resolve argument", argumentExpression); context.trace, "transient trace to resolve argument", argumentExpression);
JetType expectedType = substitutor.substitute(effectiveExpectedType, Variance.INVARIANT); JetType expectedType = substitutor.substitute(effectiveExpectedType, Variance.INVARIANT);
CallResolutionContext newContext = context.replaceBindingTrace(traceToResolveArgument).replaceExpectedType(expectedType); CallResolutionContext<?> newContext = context.replaceBindingTrace(traceToResolveArgument).replaceExpectedType(expectedType);
JetTypeInfo typeInfoForCall = argumentTypeResolver.getArgumentTypeInfo(argumentExpression, newContext, JetTypeInfo typeInfoForCall = argumentTypeResolver.getArgumentTypeInfo(argumentExpression, newContext,
resolveFunctionArgumentBodies, traceToResolveArgument); resolveFunctionArgumentBodies, traceToResolveArgument);
JetType type = typeInfoForCall.getType(); JetType type = typeInfoForCall.getType();
@@ -558,7 +558,7 @@ public class CandidateResolver {
if (TypeUtils.dependsOnTypeParameters(expectedType, candidateCall.getCandidateDescriptor().getTypeParameters())) { if (TypeUtils.dependsOnTypeParameters(expectedType, candidateCall.getCandidateDescriptor().getTypeParameters())) {
expectedType = NO_EXPECTED_TYPE; expectedType = NO_EXPECTED_TYPE;
} }
CallResolutionContext newContext = context.replaceDataFlowInfo(candidateCall.getDataFlowInfo()).replaceBindingTrace(trace) CallResolutionContext<?> newContext = context.replaceDataFlowInfo(candidateCall.getDataFlowInfo()).replaceBindingTrace(trace)
.replaceExpectedType(expectedType); .replaceExpectedType(expectedType);
JetTypeInfo typeInfoForCall = argumentTypeResolver.getArgumentTypeInfo( JetTypeInfo typeInfoForCall = argumentTypeResolver.getArgumentTypeInfo(
expression, newContext, resolveFunctionArgumentBodies, null); expression, newContext, resolveFunctionArgumentBodies, null);