TypeProjection interface extracted
This commit is contained in:
+2
-1
@@ -28,6 +28,7 @@ import org.jetbrains.jet.lang.resolve.name.FqName;
|
||||
import org.jetbrains.jet.lang.resolve.name.Name;
|
||||
import org.jetbrains.jet.lang.types.TypeConstructor;
|
||||
import org.jetbrains.jet.lang.types.TypeProjection;
|
||||
import org.jetbrains.jet.lang.types.TypeProjectionImpl;
|
||||
import org.jetbrains.jet.lang.types.TypeSubstitutor;
|
||||
|
||||
import java.util.*;
|
||||
@@ -263,7 +264,7 @@ public final class DescriptorResolverUtils {
|
||||
for (Map.Entry<TypeParameterDescriptor, TypeParameterDescriptorImpl> originalToAltTypeParameter : originalToAltTypeParameters
|
||||
.entrySet()) {
|
||||
typeSubstitutionContext.put(originalToAltTypeParameter.getKey().getTypeConstructor(),
|
||||
new TypeProjection(originalToAltTypeParameter.getValue().getDefaultType()));
|
||||
new TypeProjectionImpl(originalToAltTypeParameter.getValue().getDefaultType()));
|
||||
}
|
||||
return TypeSubstitutor.create(typeSubstitutionContext);
|
||||
}
|
||||
|
||||
+2
-2
@@ -30,7 +30,7 @@ import org.jetbrains.jet.lang.resolve.name.FqName;
|
||||
import org.jetbrains.jet.lang.resolve.name.Name;
|
||||
import org.jetbrains.jet.lang.types.JetType;
|
||||
import org.jetbrains.jet.lang.types.JetTypeImpl;
|
||||
import org.jetbrains.jet.lang.types.TypeProjection;
|
||||
import org.jetbrains.jet.lang.types.TypeProjectionImpl;
|
||||
import org.jetbrains.jet.lang.types.lang.KotlinBuiltIns;
|
||||
|
||||
import javax.inject.Inject;
|
||||
@@ -157,7 +157,7 @@ public final class JavaAnnotationArgumentResolver {
|
||||
ClassDescriptor jlClass = classResolver.resolveClass(JL_CLASS_FQ_NAME, IGNORE_KOTLIN_SOURCES);
|
||||
if (jlClass == null) return null;
|
||||
|
||||
List<TypeProjection> arguments = Collections.singletonList(new TypeProjection(type));
|
||||
List<TypeProjectionImpl> arguments = Collections.singletonList(new TypeProjectionImpl(type));
|
||||
JetTypeImpl javaClassType = new JetTypeImpl(
|
||||
jlClass.getAnnotations(),
|
||||
jlClass.getTypeConstructor(),
|
||||
|
||||
+5
-5
@@ -51,7 +51,7 @@ public class JavaTypeTransformer {
|
||||
@NotNull TypeUsage howThisTypeIsUsed
|
||||
) {
|
||||
if (!(type instanceof JavaWildcardType)) {
|
||||
return new TypeProjection(transformToType(type, howThisTypeIsUsed, typeVariableResolver));
|
||||
return new TypeProjectionImpl(transformToType(type, howThisTypeIsUsed, typeVariableResolver));
|
||||
}
|
||||
|
||||
JavaWildcardType wildcardType = (JavaWildcardType) type;
|
||||
@@ -62,7 +62,7 @@ public class JavaTypeTransformer {
|
||||
|
||||
Variance variance = wildcardType.isExtends() ? OUT_VARIANCE : IN_VARIANCE;
|
||||
|
||||
return new TypeProjection(variance, transformToType(bound, UPPER_BOUND, typeVariableResolver));
|
||||
return new TypeProjectionImpl(variance, transformToType(bound, UPPER_BOUND, typeVariableResolver));
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@@ -181,7 +181,7 @@ public class JavaTypeTransformer {
|
||||
Variance projectionKind = parameter.getVariance() == OUT_VARIANCE || howThisTypeIsUsed == SUPERTYPE
|
||||
? INVARIANT
|
||||
: OUT_VARIANCE;
|
||||
arguments.add(new TypeProjection(projectionKind, KotlinBuiltIns.getInstance().getNullableAnyType()));
|
||||
arguments.add(new TypeProjectionImpl(projectionKind, KotlinBuiltIns.getInstance().getNullableAnyType()));
|
||||
}
|
||||
}
|
||||
else {
|
||||
@@ -190,7 +190,7 @@ public class JavaTypeTransformer {
|
||||
if (parameters.size() != javaTypeArguments.size()) {
|
||||
// Most of the time this means there is an error in the Java code
|
||||
for (TypeParameterDescriptor parameter : parameters) {
|
||||
arguments.add(new TypeProjection(ErrorUtils.createErrorType(parameter.getName().asString())));
|
||||
arguments.add(new TypeProjectionImpl(ErrorUtils.createErrorType(parameter.getName().asString())));
|
||||
}
|
||||
}
|
||||
else {
|
||||
@@ -204,7 +204,7 @@ public class JavaTypeTransformer {
|
||||
|
||||
if (typeProjection.getProjectionKind() == typeParameterDescriptor.getVariance()) {
|
||||
// remove redundant 'out' and 'in'
|
||||
arguments.add(new TypeProjection(INVARIANT, typeProjection.getType()));
|
||||
arguments.add(new TypeProjectionImpl(INVARIANT, typeProjection.getType()));
|
||||
}
|
||||
else {
|
||||
arguments.add(typeProjection);
|
||||
|
||||
+1
-1
@@ -63,7 +63,7 @@ public class SingleAbstractMethodUtils {
|
||||
Variance kind = argument.getProjectionKind();
|
||||
if (kind != INVARIANT && variance != INVARIANT) {
|
||||
if (kind == variance) {
|
||||
arguments.add(new TypeProjection(argument.getType()));
|
||||
arguments.add(new TypeProjectionImpl(argument.getType()));
|
||||
}
|
||||
else {
|
||||
return null;
|
||||
|
||||
Reference in New Issue
Block a user