[FIR] Add isSubtypeOf function
This commit is contained in:
committed by
TeamCityServer
parent
38079372e1
commit
7a522ade15
@@ -9,6 +9,7 @@ import org.jetbrains.kotlin.descriptors.Visibilities
|
|||||||
import org.jetbrains.kotlin.descriptors.Visibility
|
import org.jetbrains.kotlin.descriptors.Visibility
|
||||||
import org.jetbrains.kotlin.fir.*
|
import org.jetbrains.kotlin.fir.*
|
||||||
import org.jetbrains.kotlin.fir.declarations.FirAnonymousObject
|
import org.jetbrains.kotlin.fir.declarations.FirAnonymousObject
|
||||||
|
import org.jetbrains.kotlin.fir.declarations.FirTypedDeclaration
|
||||||
import org.jetbrains.kotlin.fir.diagnostics.ConeSimpleDiagnostic
|
import org.jetbrains.kotlin.fir.diagnostics.ConeSimpleDiagnostic
|
||||||
import org.jetbrains.kotlin.fir.resolve.fullyExpandedType
|
import org.jetbrains.kotlin.fir.resolve.fullyExpandedType
|
||||||
import org.jetbrains.kotlin.fir.resolve.substitution.substitutorByMap
|
import org.jetbrains.kotlin.fir.resolve.substitution.substitutorByMap
|
||||||
@@ -528,3 +529,14 @@ fun ConeKotlinType.isSubtypeOf(superType: ConeKotlinType, session: FirSession):
|
|||||||
session.typeContext.newTypeCheckerState(errorTypesEqualToAnything = false, stubTypesEqualToAnything = false),
|
session.typeContext.newTypeCheckerState(errorTypesEqualToAnything = false, stubTypesEqualToAnything = false),
|
||||||
this, superType,
|
this, superType,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
fun FirTypedDeclaration.isSubtypeOf(
|
||||||
|
other: FirTypedDeclaration,
|
||||||
|
typeCheckerContext: TypeCheckerState
|
||||||
|
): Boolean {
|
||||||
|
return AbstractTypeChecker.isSubtypeOf(
|
||||||
|
typeCheckerContext,
|
||||||
|
returnTypeRef.coneType,
|
||||||
|
other.returnTypeRef.coneType
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user