Support annotations on class type parameters
#KT-43714
This commit is contained in:
+6
-2
@@ -18,6 +18,7 @@ package org.jetbrains.kotlin.serialization.deserialization.descriptors
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.SourceElement
|
||||
import org.jetbrains.kotlin.descriptors.SupertypeLoopChecker
|
||||
import org.jetbrains.kotlin.descriptors.annotations.Annotations
|
||||
import org.jetbrains.kotlin.descriptors.impl.AbstractLazyTypeParameterDescriptor
|
||||
import org.jetbrains.kotlin.metadata.ProtoBuf
|
||||
import org.jetbrains.kotlin.metadata.deserialization.upperBounds
|
||||
@@ -32,8 +33,11 @@ class DeserializedTypeParameterDescriptor(
|
||||
val proto: ProtoBuf.TypeParameter,
|
||||
index: Int
|
||||
) : AbstractLazyTypeParameterDescriptor(
|
||||
c.storageManager, c.containingDeclaration, c.nameResolver.getName(proto.name),
|
||||
ProtoEnumFlags.variance(proto.variance), proto.reified, index, SourceElement.NO_SOURCE, SupertypeLoopChecker.EMPTY
|
||||
c.storageManager, c.containingDeclaration,
|
||||
/*TODO: support deserialized type annotations: now they are unused, even not accessible via reflection (KT-46932)*/
|
||||
Annotations.EMPTY,
|
||||
c.nameResolver.getName(proto.name),
|
||||
ProtoEnumFlags.variance(proto.variance), proto.reified, index, SourceElement.NO_SOURCE, SupertypeLoopChecker.EMPTY,
|
||||
) {
|
||||
override val annotations = DeserializedAnnotations(c.storageManager) {
|
||||
c.components.annotationAndConstantLoader.loadTypeParameterAnnotations(proto, c.nameResolver).toList()
|
||||
|
||||
Reference in New Issue
Block a user