Drop TypeUsage::MEMBER_SIGNATURE_CONTRAVARIANT
It's only used for value parameters, but they're always resolved with flexible types now
This commit is contained in:
-1
@@ -21,7 +21,6 @@ package org.jetbrains.kotlin.load.java.components;
|
|||||||
* This enum encodes the kinds of occurrences
|
* This enum encodes the kinds of occurrences
|
||||||
*/
|
*/
|
||||||
public enum TypeUsage {
|
public enum TypeUsage {
|
||||||
MEMBER_SIGNATURE_CONTRAVARIANT,
|
|
||||||
SUPERTYPE,
|
SUPERTYPE,
|
||||||
COMMON
|
COMMON
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -168,7 +168,7 @@ abstract class LazyJavaScope(protected val c: LazyJavaResolverContext) : MemberS
|
|||||||
val (index, javaParameter) = pair
|
val (index, javaParameter) = pair
|
||||||
|
|
||||||
val annotations = c.resolveAnnotations(javaParameter)
|
val annotations = c.resolveAnnotations(javaParameter)
|
||||||
val typeUsage = LazyJavaTypeAttributes(TypeUsage.MEMBER_SIGNATURE_CONTRAVARIANT, annotations)
|
val typeUsage = LazyJavaTypeAttributes(TypeUsage.COMMON, annotations)
|
||||||
val (outType, varargElementType) =
|
val (outType, varargElementType) =
|
||||||
if (javaParameter.isVararg) {
|
if (javaParameter.isVararg) {
|
||||||
val paramType = javaParameter.type as? JavaArrayType
|
val paramType = javaParameter.type as? JavaArrayType
|
||||||
|
|||||||
+3
-2
@@ -25,7 +25,8 @@ import org.jetbrains.kotlin.load.java.ANNOTATIONS_COPIED_TO_TYPES
|
|||||||
import org.jetbrains.kotlin.load.java.JvmAnnotationNames.JETBRAINS_NOT_NULL_ANNOTATION
|
import org.jetbrains.kotlin.load.java.JvmAnnotationNames.JETBRAINS_NOT_NULL_ANNOTATION
|
||||||
import org.jetbrains.kotlin.load.java.JvmAnnotationNames.JETBRAINS_NULLABLE_ANNOTATION
|
import org.jetbrains.kotlin.load.java.JvmAnnotationNames.JETBRAINS_NULLABLE_ANNOTATION
|
||||||
import org.jetbrains.kotlin.load.java.components.TypeUsage
|
import org.jetbrains.kotlin.load.java.components.TypeUsage
|
||||||
import org.jetbrains.kotlin.load.java.components.TypeUsage.*
|
import org.jetbrains.kotlin.load.java.components.TypeUsage.COMMON
|
||||||
|
import org.jetbrains.kotlin.load.java.components.TypeUsage.SUPERTYPE
|
||||||
import org.jetbrains.kotlin.load.java.lazy.LazyJavaAnnotations
|
import org.jetbrains.kotlin.load.java.lazy.LazyJavaAnnotations
|
||||||
import org.jetbrains.kotlin.load.java.lazy.LazyJavaResolverContext
|
import org.jetbrains.kotlin.load.java.lazy.LazyJavaResolverContext
|
||||||
import org.jetbrains.kotlin.load.java.lazy.TypeParameterResolver
|
import org.jetbrains.kotlin.load.java.lazy.TypeParameterResolver
|
||||||
@@ -82,7 +83,7 @@ class JavaTypeResolver(
|
|||||||
c.module.builtIns.getArrayType(OUT_VARIANCE, componentType).makeNullableAsSpecified(true))
|
c.module.builtIns.getArrayType(OUT_VARIANCE, componentType).makeNullableAsSpecified(true))
|
||||||
}
|
}
|
||||||
|
|
||||||
val projectionKind = if (attr.howThisTypeIsUsed == MEMBER_SIGNATURE_CONTRAVARIANT || isVararg) OUT_VARIANCE else INVARIANT
|
val projectionKind = if (isVararg) OUT_VARIANCE else INVARIANT
|
||||||
val result = c.module.builtIns.getArrayType(projectionKind, componentType)
|
val result = c.module.builtIns.getArrayType(projectionKind, componentType)
|
||||||
return@run result.makeNullableAsSpecified(!attr.isMarkedNotNull)
|
return@run result.makeNullableAsSpecified(!attr.isMarkedNotNull)
|
||||||
}.replaceAnnotations(attr.typeAnnotations)
|
}.replaceAnnotations(attr.typeAnnotations)
|
||||||
|
|||||||
Reference in New Issue
Block a user