File tree Expand file tree Collapse file tree 1 file changed +10
-1
lines changed
core/descriptors/src/org/jetbrains/kotlin/types Expand file tree Collapse file tree 1 file changed +10
-1
lines changed Original file line number Diff line number Diff line change @@ -18,6 +18,8 @@ package org.jetbrains.kotlin.types.typesApproximation
18
18
19
19
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
20
20
import org.jetbrains.kotlin.descriptors.TypeParameterDescriptor
21
+ import org.jetbrains.kotlin.renderer.ClassifierNamePolicy
22
+ import org.jetbrains.kotlin.renderer.DescriptorRenderer
21
23
import org.jetbrains.kotlin.resolve.calls.inference.CapturedTypeConstructor
22
24
import org.jetbrains.kotlin.resolve.calls.inference.isCaptured
23
25
import org.jetbrains.kotlin.resolve.descriptorUtil.builtIns
@@ -41,7 +43,14 @@ private class TypeArgument(
41
43
}
42
44
43
45
private fun TypeArgument.toTypeProjection (): TypeProjection {
44
- assert (isConsistent) { " Only consistent enhanced type propection can be converted to type projection" }
46
+ assert (isConsistent) {
47
+ val descriptorRenderer = DescriptorRenderer .withOptions {
48
+ classifierNamePolicy = ClassifierNamePolicy .FULLY_QUALIFIED
49
+ }
50
+ " Only consistent enhanced type projection can be converted to type projection, but " +
51
+ " [${descriptorRenderer.render(typeParameter)} : <${descriptorRenderer.renderType(inProjection)} , ${descriptorRenderer.renderType(outProjection)} >]" +
52
+ " was found"
53
+ }
45
54
fun removeProjectionIfRedundant (variance : Variance ) = if (variance == typeParameter.variance) Variance .INVARIANT else variance
46
55
return when {
47
56
inProjection == outProjection -> TypeProjectionImpl (inProjection)
You can’t perform that action at this time.
0 commit comments