Drop isEqualTypeConstructor in favour of areEqualTypeConstructors
This commit is contained in:
@@ -27,8 +27,6 @@ open class IrTypeCheckerContext(override val irBuiltIns: IrBuiltIns) : IrTypeSys
|
||||
}
|
||||
}
|
||||
|
||||
override fun areEqualTypeConstructors(a: TypeConstructorMarker, b: TypeConstructorMarker) = super.isEqualTypeConstructors(a, b)
|
||||
|
||||
override val isErrorTypeEqualsToAnything get() = false
|
||||
override val isStubTypeEqualsToAnything get() = false
|
||||
|
||||
|
||||
@@ -24,14 +24,8 @@ open class IrTypeCheckerContextWithAdditionalAxioms(
|
||||
private val secondTypeParameterConstructors = secondParameters.map { it.symbol }
|
||||
private val matchingTypeConstructors = firstTypeParameterConstructors.zip(secondTypeParameterConstructors).toMap()
|
||||
|
||||
override fun areEqualTypeConstructors(a: TypeConstructorMarker, b: TypeConstructorMarker): Boolean {
|
||||
if (super.isEqualTypeConstructors(a, b)) return true
|
||||
if (matchingTypeConstructors[a] == b || matchingTypeConstructors[b] == a) return true
|
||||
return false
|
||||
}
|
||||
|
||||
override fun isEqualTypeConstructors(c1: TypeConstructorMarker, c2: TypeConstructorMarker): Boolean {
|
||||
if (super.isEqualTypeConstructors(c1, c2)) return true
|
||||
override fun areEqualTypeConstructors(c1: TypeConstructorMarker, c2: TypeConstructorMarker): Boolean {
|
||||
if (super.areEqualTypeConstructors(c1, c2)) return true
|
||||
if (matchingTypeConstructors[c1] == c2 || matchingTypeConstructors[c2] == c1) return true
|
||||
return false
|
||||
}
|
||||
|
||||
@@ -139,7 +139,7 @@ interface IrTypeSystemContext : TypeSystemContext, TypeSystemCommonSuperTypesCon
|
||||
|
||||
override fun TypeParameterMarker.getTypeConstructor() = this as IrTypeParameterSymbol
|
||||
|
||||
override fun isEqualTypeConstructors(c1: TypeConstructorMarker, c2: TypeConstructorMarker) = FqNameEqualityChecker.areEqual(
|
||||
override fun areEqualTypeConstructors(c1: TypeConstructorMarker, c2: TypeConstructorMarker) = FqNameEqualityChecker.areEqual(
|
||||
c1 as IrClassifierSymbol, c2 as IrClassifierSymbol
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user