[FIR/NI] Refactor type variable gathering from lambda types

Motivation:
- drop getArguments from type context as a duplicate of getArgumentList
- reduce the number of collection allocations in getAllDeeplyRelatedTypeVariables

Additional minor improvements, test data fixes
This commit is contained in:
Pavel Kirpichenkov
2020-10-05 19:31:52 +03:00
parent ef44077cb7
commit 39a87435ee
14 changed files with 77 additions and 56 deletions
@@ -94,12 +94,6 @@ interface IrTypeSystemContext : TypeSystemContext, TypeSystemCommonSuperTypesCon
else -> error("Type $this has no arguments")
}
override fun KotlinTypeMarker.getArguments(): List<TypeArgumentMarker> =
when (this) {
is IrSimpleType -> arguments
else -> error("Type $this has no arguments")
}
override fun KotlinTypeMarker.asTypeArgument() = this as IrTypeArgument
override fun CapturedTypeMarker.lowerType(): KotlinTypeMarker? = error("Captured Type is not valid for IrTypes")