[LL] Run LLFirExpectActualMatchingTargetResolver only for KMP projects

Review: https://jetbrains.team/p/kt/reviews/13244

Motivation: Performance. When I fix KT-59887 in later commits, I will
make actual-to-expect resolve to work not only for actual declarations.
Considering that LLFirExpectActualMatcherLazyResolver worked even for
non-KMP projects that might be a potential performance regression

FirExpectActualMatcherProcessor in the compiler does the same thing (it
checks for MultiPlatformProjects before running the transformer)
This commit is contained in:
Nikita Bobko
2023-12-01 13:54:54 +01:00
committed by Space Team
parent ac3d8ad3ac
commit 453d871b25
3 changed files with 21 additions and 13 deletions
@@ -161,7 +161,7 @@ FILE: [ResolvedTo(IMPORTS)] actual.kt
EXPECT_ACTUAL_MATCHING:
FILE: [ResolvedTo(IMPORTS)] actual.kt
public final actual [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ExpectForActualAttributeKey={}] class Actual : R|kotlin/Any| {
public final actual [ResolvedTo(EXPECT_ACTUAL_MATCHING)] class Actual : R|kotlin/Any| {
public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Actual] constructor(): R|Actual| {
LAZY_super<R|kotlin/Any|>
}
@@ -184,7 +184,7 @@ FILE: [ResolvedTo(IMPORTS)] actual.kt
CONTRACTS:
FILE: [ResolvedTo(IMPORTS)] actual.kt
public final actual [ResolvedTo(CONTRACTS)] [ExpectForActualAttributeKey={}] class Actual : R|kotlin/Any| {
public final actual [ResolvedTo(CONTRACTS)] class Actual : R|kotlin/Any| {
public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Actual] constructor(): R|Actual| {
LAZY_super<R|kotlin/Any|>
}
@@ -207,7 +207,7 @@ FILE: [ResolvedTo(IMPORTS)] actual.kt
IMPLICIT_TYPES_BODY_RESOLVE:
FILE: [ResolvedTo(IMPORTS)] actual.kt
public final actual [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ExpectForActualAttributeKey={}] class Actual : R|kotlin/Any| {
public final actual [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] class Actual : R|kotlin/Any| {
public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Actual] constructor(): R|Actual| {
LAZY_super<R|kotlin/Any|>
}
@@ -230,7 +230,7 @@ FILE: [ResolvedTo(IMPORTS)] actual.kt
ANNOTATION_ARGUMENTS:
FILE: [ResolvedTo(IMPORTS)] actual.kt
public final actual [ResolvedTo(ANNOTATION_ARGUMENTS)] [ExpectForActualAttributeKey={}] class Actual : R|kotlin/Any| {
public final actual [ResolvedTo(ANNOTATION_ARGUMENTS)] class Actual : R|kotlin/Any| {
public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Actual] constructor(): R|Actual| {
LAZY_super<R|kotlin/Any|>
}
@@ -253,7 +253,7 @@ FILE: [ResolvedTo(IMPORTS)] actual.kt
BODY_RESOLVE:
FILE: [ResolvedTo(IMPORTS)] actual.kt
public final actual [ResolvedTo(BODY_RESOLVE)] [ExpectForActualAttributeKey={}] class Actual : R|kotlin/Any| {
public final actual [ResolvedTo(BODY_RESOLVE)] class Actual : R|kotlin/Any| {
public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Actual] constructor(): R|Actual| {
super<R|kotlin/Any|>()
}
@@ -276,7 +276,7 @@ FILE: [ResolvedTo(IMPORTS)] actual.kt
FILE RAW TO BODY:
FILE: [ResolvedTo(BODY_RESOLVE)] actual.kt
public final actual [ResolvedTo(BODY_RESOLVE)] [ExpectForActualAttributeKey={}] class Actual : R|kotlin/Any| {
public final actual [ResolvedTo(BODY_RESOLVE)] class Actual : R|kotlin/Any| {
public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Actual] constructor(): R|Actual| {
super<R|kotlin/Any|>()
}
@@ -287,7 +287,7 @@ FILE: [ResolvedTo(BODY_RESOLVE)] actual.kt
public final [ResolvedTo(BODY_RESOLVE)] val a: R|kotlin/Int| = Int(1)
public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Actual] get(): R|kotlin/Int|
public final actual [ResolvedTo(BODY_RESOLVE)] [ExpectForActualAttributeKey={}] class NestedActual : R|kotlin/Any| {
public final actual [ResolvedTo(BODY_RESOLVE)] class NestedActual : R|kotlin/Any| {
public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=NestedActual] constructor(): R|Actual.NestedActual| {
super<R|kotlin/Any|>()
}