From 38c959ba5a316fe298c0ddae0ec9fc16d2ebfc5f Mon Sep 17 00:00:00 2001 From: Dmitrii Gridin Date: Tue, 21 Nov 2023 16:58:52 +0100 Subject: [PATCH] [LL FIR] resolve original declarations before fake MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This is required to have stable resolution order to avoid concurrent modifications and correct resolution context. E.g., this commit fixes the resolution behavior of fake override for ANNOTATION_ARGUMENTS phase – now annotation argument resolves correctly. We shouldn't do additional checks in the case of fake declaration because they should be done on the original side ^KT-63042 --- .../fir/transformers/LLFirTargetResolver.kt | 17 ++++-- .../lazyResolve/delegateWithImplicitType.txt | 8 +-- ...gateWithImplicitTypeInDifferentModules.txt | 8 +-- .../delegateWithImplicitTypeScript.txt | 8 +-- .../explicitSubstitutionOverrideProperty.txt | 30 +++++----- ...icitSubstitutionOverridePropertyScript.txt | 30 +++++----- .../testData/lazyResolve/fakeOverride.txt | 12 ++-- .../lazyResolve/fakeOverrideScript.txt | 13 +++-- .../implicitSubstitutionOverrideProperty.txt | 24 ++++---- ...icitSubstitutionOverridePropertyScript.txt | 24 ++++---- .../propertyDelegateWithImplicitType.txt | 24 ++++---- ...propertyDelegateWithImplicitTypeScript.txt | 24 ++++---- .../lazyResolve/substitutionFakeOverride.txt | 20 +++---- .../substitutionFakeOverrideFunction.txt | 10 ++-- ...substitutionFakeOverrideFunctionScript.txt | 10 ++-- ...onFakeOverrideFunctionWithImplicitType.txt | 8 +-- ...OverrideFunctionWithImplicitTypeScript.txt | 8 +-- ...titutionFakeOverrideInDifferentModules.txt | 20 +++---- .../substitutionFakeOverrideScript.txt | 20 +++---- ...bstitutionFakeOverrideWithImplicitType.txt | 16 +++--- ...akeOverrideWithImplicitTypeAndReceiver.txt | 16 +++--- ...rrideWithImplicitTypeAndReceiverScript.txt | 16 +++--- ...tionFakeOverrideWithImplicitTypeScript.txt | 16 +++--- .../delegateWithExplicitType.lazyResolve.txt | 18 ++++-- ...gateWithExplicitTypeScript.lazyResolve.txt | 19 +++++-- ...ithExplicitTypeUnavailable.lazyResolve.txt | 54 ++++++++++-------- ...licitTypeUnavailableScript.lazyResolve.txt | 55 +++++++++++-------- .../delegateWithImplicitType.lazyResolve.txt | 8 +-- ...gateWithImplicitTypeScript.lazyResolve.txt | 9 +-- ...ithImplicitTypeUnavailable.lazyResolve.txt | 34 ++++++------ ...licitTypeUnavailableScript.lazyResolve.txt | 35 ++++++------ .../constructor.lazyResolve.txt | 2 +- .../constructorCallSite.after.txt | 2 +- .../constructorCallSite.before.txt | 2 +- .../constructorCallSite.lazyResolve.txt | 2 +- .../constructorCallSiteScript.after.txt | 3 +- .../constructorCallSiteScript.before.txt | 3 +- .../constructorCallSiteScript.lazyResolve.txt | 3 +- .../constructorScript.lazyResolve.txt | 3 +- .../function.lazyResolve.txt | 10 ++-- .../functionScript.lazyResolve.txt | 11 ++-- .../functionUnavailable.lazyResolve.txt | 14 ++--- .../functionUnavailableScript.lazyResolve.txt | 15 ++--- .../implicitFunction.lazyResolve.txt | 8 +-- .../implicitFunctionScript.lazyResolve.txt | 9 +-- ...mplicitFunctionUnavailable.lazyResolve.txt | 16 +++--- ...tFunctionUnavailableScript.lazyResolve.txt | 17 +++--- .../implicitProperty.lazyResolve.txt | 24 ++++---- ...mplicitPropertyAndReceiver.lazyResolve.txt | 24 ++++---- ...tPropertyAndReceiverScript.lazyResolve.txt | 25 +++++---- .../implicitPropertyScript.lazyResolve.txt | 25 +++++---- ...mplicitPropertyUnavailable.lazyResolve.txt | 40 +++++++------- ...tPropertyUnavailableScript.lazyResolve.txt | 41 +++++++------- .../property.lazyResolve.txt | 30 +++++----- .../propertyScript.lazyResolve.txt | 31 ++++++----- .../propertyUnavailable.lazyResolve.txt | 42 +++++++------- .../propertyUnavailableScript.lazyResolve.txt | 43 ++++++++------- 57 files changed, 557 insertions(+), 502 deletions(-) diff --git a/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/transformers/LLFirTargetResolver.kt b/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/transformers/LLFirTargetResolver.kt index f4aa48e351f..b9cea756b8c 100644 --- a/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/transformers/LLFirTargetResolver.kt +++ b/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/transformers/LLFirTargetResolver.kt @@ -11,6 +11,7 @@ import org.jetbrains.kotlin.analysis.low.level.api.fir.util.checkPhase import org.jetbrains.kotlin.fir.FirElement import org.jetbrains.kotlin.fir.FirElementWithResolveState import org.jetbrains.kotlin.fir.FirFileAnnotationsContainer +import org.jetbrains.kotlin.fir.declarations.FirCallableDeclaration import org.jetbrains.kotlin.fir.declarations.FirDeclarationOrigin import org.jetbrains.kotlin.fir.declarations.FirFile import org.jetbrains.kotlin.fir.declarations.FirProperty @@ -21,6 +22,7 @@ import org.jetbrains.kotlin.fir.declarations.FirSimpleFunction import org.jetbrains.kotlin.fir.declarations.utils.componentFunctionSymbol import org.jetbrains.kotlin.fir.declarations.utils.correspondingValueParameterFromPrimaryConstructor import org.jetbrains.kotlin.fir.declarations.utils.fromPrimaryConstructor +import org.jetbrains.kotlin.fir.originalIfFakeOverrideOrDelegated import org.jetbrains.kotlin.fir.symbols.lazyResolveToPhase import org.jetbrains.kotlin.fir.utils.exceptions.withFirEntry import org.jetbrains.kotlin.resolve.DataClassResolver @@ -71,13 +73,16 @@ internal abstract class LLFirTargetResolver( if (skipDependencyTargetResolutionStep || target is FirFileAnnotationsContainer) return resolveTarget.firFile.annotationsContainer?.lazyResolveToPhase(resolverPhase) - if (target is FirProperty) { - // We share type references and annotations with the original parameter - target.correspondingValueParameterFromPrimaryConstructor?.lazyResolveToPhase(resolverPhase) - } + val originalDeclaration = (target as? FirCallableDeclaration)?.originalIfFakeOverrideOrDelegated() + when { + // Fake or delegate declaration shared types and annotations from the original one + originalDeclaration != null -> originalDeclaration.lazyResolveToPhase(resolverPhase) - if (target is FirSimpleFunction && target.origin == FirDeclarationOrigin.Synthetic.DataClassMember) { - resolveDataClassMemberDependencies(target) + // We share type references and annotations with the original parameter + target is FirProperty -> target.correspondingValueParameterFromPrimaryConstructor?.lazyResolveToPhase(resolverPhase) + target is FirSimpleFunction && target.origin == FirDeclarationOrigin.Synthetic.DataClassMember -> { + resolveDataClassMemberDependencies(target) + } } } diff --git a/analysis/low-level-api-fir/testData/lazyResolve/delegateWithImplicitType.txt b/analysis/low-level-api-fir/testData/lazyResolve/delegateWithImplicitType.txt index 79fb6b5a385..917410d4ff1 100644 --- a/analysis/low-level-api-fir/testData/lazyResolve/delegateWithImplicitType.txt +++ b/analysis/low-level-api-fir/testData/lazyResolve/delegateWithImplicitType.txt @@ -28,7 +28,7 @@ FILE: [ResolvedTo(IMPORTS)] delegateWithImplicitType.kt } public abstract [ResolvedTo(STATUS)] interface Interface : R|kotlin/Any| { - public open [ResolvedTo(STATUS)] fun implicitType(): { LAZY_BLOCK } + public open [ResolvedTo(EXPECT_ACTUAL_MATCHING)] fun implicitType(): { LAZY_BLOCK } } @@ -45,7 +45,7 @@ FILE: [ResolvedTo(IMPORTS)] delegateWithImplicitType.kt } public abstract [ResolvedTo(STATUS)] interface Interface : R|kotlin/Any| { - public open [ResolvedTo(STATUS)] fun implicitType(): { LAZY_BLOCK } + public open [ResolvedTo(CONTRACTS)] fun implicitType(): { LAZY_BLOCK } } @@ -81,7 +81,7 @@ FILE: [ResolvedTo(IMPORTS)] delegateWithImplicitType.kt } public abstract [ResolvedTo(STATUS)] interface Interface : R|kotlin/Any| { - public open [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] fun implicitType(): R|kotlin/Int| { + public open [ResolvedTo(ANNOTATION_ARGUMENTS)] fun implicitType(): R|kotlin/Int| { ^implicitType Int(42) } @@ -100,7 +100,7 @@ FILE: [ResolvedTo(IMPORTS)] delegateWithImplicitType.kt } public abstract [ResolvedTo(STATUS)] interface Interface : R|kotlin/Any| { - public open [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] fun implicitType(): R|kotlin/Int| { + public open [ResolvedTo(ANNOTATION_ARGUMENTS)] fun implicitType(): R|kotlin/Int| { ^implicitType Int(42) } diff --git a/analysis/low-level-api-fir/testData/lazyResolve/delegateWithImplicitTypeInDifferentModules.txt b/analysis/low-level-api-fir/testData/lazyResolve/delegateWithImplicitTypeInDifferentModules.txt index 598d147dd0a..19c9434e2d6 100644 --- a/analysis/low-level-api-fir/testData/lazyResolve/delegateWithImplicitTypeInDifferentModules.txt +++ b/analysis/low-level-api-fir/testData/lazyResolve/delegateWithImplicitTypeInDifferentModules.txt @@ -22,7 +22,7 @@ TARGET: public open [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [CallableCopySubstituti FILE: [ResolvedTo(IMPORTS)] Interface.kt public abstract [ResolvedTo(STATUS)] interface Interface : R|kotlin/Any| { - public open [ResolvedTo(STATUS)] fun implicitType(): { LAZY_BLOCK } + public open [ResolvedTo(EXPECT_ACTUAL_MATCHING)] fun implicitType(): { LAZY_BLOCK } } @@ -41,7 +41,7 @@ TARGET: public open [ResolvedTo(CONTRACTS)] [CallableCopySubstitutionKey=Callabl FILE: [ResolvedTo(IMPORTS)] Interface.kt public abstract [ResolvedTo(STATUS)] interface Interface : R|kotlin/Any| { - public open [ResolvedTo(STATUS)] fun implicitType(): { LAZY_BLOCK } + public open [ResolvedTo(CONTRACTS)] fun implicitType(): { LAZY_BLOCK } } @@ -81,7 +81,7 @@ TARGET: public open [ResolvedTo(ANNOTATION_ARGUMENTS)] [DelegatedWrapperDataKey= FILE: [ResolvedTo(IMPORTS)] Interface.kt public abstract [ResolvedTo(STATUS)] interface Interface : R|kotlin/Any| { - public open [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] fun implicitType(): R|kotlin/Int| { + public open [ResolvedTo(ANNOTATION_ARGUMENTS)] fun implicitType(): R|kotlin/Int| { ^implicitType Int(42) } @@ -102,7 +102,7 @@ TARGET: public open [ResolvedTo(BODY_RESOLVE)] [DelegatedWrapperDataKey=[wrapped FILE: [ResolvedTo(IMPORTS)] Interface.kt public abstract [ResolvedTo(STATUS)] interface Interface : R|kotlin/Any| { - public open [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] fun implicitType(): R|kotlin/Int| { + public open [ResolvedTo(ANNOTATION_ARGUMENTS)] fun implicitType(): R|kotlin/Int| { ^implicitType Int(42) } diff --git a/analysis/low-level-api-fir/testData/lazyResolve/delegateWithImplicitTypeScript.txt b/analysis/low-level-api-fir/testData/lazyResolve/delegateWithImplicitTypeScript.txt index a08e4cf76e0..10db25bd27e 100644 --- a/analysis/low-level-api-fir/testData/lazyResolve/delegateWithImplicitTypeScript.txt +++ b/analysis/low-level-api-fir/testData/lazyResolve/delegateWithImplicitTypeScript.txt @@ -39,7 +39,7 @@ FILE: [ResolvedTo(IMPORTS)] delegateWithImplicitTypeScript.kts } public abstract [ResolvedTo(STATUS)] interface Interface : R|kotlin/Any| { - public open [ResolvedTo(STATUS)] fun implicitType(): { LAZY_BLOCK } + public open [ResolvedTo(EXPECT_ACTUAL_MATCHING)] fun implicitType(): { LAZY_BLOCK } } @@ -62,7 +62,7 @@ FILE: [ResolvedTo(IMPORTS)] delegateWithImplicitTypeScript.kts } public abstract [ResolvedTo(STATUS)] interface Interface : R|kotlin/Any| { - public open [ResolvedTo(STATUS)] fun implicitType(): { LAZY_BLOCK } + public open [ResolvedTo(CONTRACTS)] fun implicitType(): { LAZY_BLOCK } } @@ -110,7 +110,7 @@ FILE: [ResolvedTo(IMPORTS)] delegateWithImplicitTypeScript.kts } public abstract [ResolvedTo(STATUS)] interface Interface : R|kotlin/Any| { - public open [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] fun implicitType(): R|kotlin/Int| { + public open [ResolvedTo(ANNOTATION_ARGUMENTS)] fun implicitType(): R|kotlin/Int| { ^implicitType Int(42) } @@ -135,7 +135,7 @@ FILE: [ResolvedTo(IMPORTS)] delegateWithImplicitTypeScript.kts } public abstract [ResolvedTo(STATUS)] interface Interface : R|kotlin/Any| { - public open [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] fun implicitType(): R|kotlin/Int| { + public open [ResolvedTo(ANNOTATION_ARGUMENTS)] fun implicitType(): R|kotlin/Int| { ^implicitType Int(42) } diff --git a/analysis/low-level-api-fir/testData/lazyResolve/explicitSubstitutionOverrideProperty.txt b/analysis/low-level-api-fir/testData/lazyResolve/explicitSubstitutionOverrideProperty.txt index 4c1edd2c9a1..69dc1d7fbb1 100644 --- a/analysis/low-level-api-fir/testData/lazyResolve/explicitSubstitutionOverrideProperty.txt +++ b/analysis/low-level-api-fir/testData/lazyResolve/explicitSubstitutionOverrideProperty.txt @@ -64,9 +64,9 @@ FILE: [ResolvedTo(IMPORTS)] explicitSubstitutionOverrideProperty.kt public final [ResolvedTo(STATUS)] fun explicitType(): R|T?| { LAZY_BLOCK } - @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(STATUS)] var resolveMe: R|T?| = LAZY_EXPRESSION - @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): R|T?| - @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] set([ResolvedTo(STATUS)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: R|T?|): R|kotlin/Unit| + @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(EXPECT_ACTUAL_MATCHING)] var resolveMe: R|T?| = LAZY_EXPRESSION + @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=AbstractClass] get(): R|T?| + @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=AbstractClass] set([ResolvedTo(EXPECT_ACTUAL_MATCHING)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: R|T?|): R|kotlin/Unit| } @@ -100,9 +100,9 @@ FILE: [ResolvedTo(IMPORTS)] explicitSubstitutionOverrideProperty.kt public final [ResolvedTo(STATUS)] fun explicitType(): R|T?| { LAZY_BLOCK } - @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(STATUS)] var resolveMe: R|T?| = LAZY_EXPRESSION - @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): R|T?| - @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] set([ResolvedTo(STATUS)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: R|T?|): R|kotlin/Unit| + @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(CONTRACTS)] var resolveMe: R|T?| = explicitType#() + @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(CONTRACTS)] [ContainingClassKey=AbstractClass] get(): R|T?| + @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(CONTRACTS)] [ContainingClassKey=AbstractClass] set([ResolvedTo(CONTRACTS)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: R|T?|): R|kotlin/Unit| } @@ -136,9 +136,9 @@ FILE: [ResolvedTo(IMPORTS)] explicitSubstitutionOverrideProperty.kt public final [ResolvedTo(STATUS)] fun explicitType(): R|T?| { LAZY_BLOCK } - @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(STATUS)] var resolveMe: R|T?| = LAZY_EXPRESSION - @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): R|T?| - @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] set([ResolvedTo(STATUS)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: R|T?|): R|kotlin/Unit| + @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] var resolveMe: R|T?| = explicitType#() + @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=AbstractClass] get(): R|T?| + @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=AbstractClass] set([ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: R|T?|): R|kotlin/Unit| } @@ -172,9 +172,9 @@ FILE: [ResolvedTo(IMPORTS)] explicitSubstitutionOverrideProperty.kt public final [ResolvedTo(STATUS)] fun explicitType(): R|T?| { LAZY_BLOCK } - @PROPERTY:R|second/Anno|[Types](position = (String(property ), R|second/constant|)) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(STATUS)] var resolveMe: R|T?| = LAZY_EXPRESSION - @PROPERTY_GETTER:R|second/Anno|[Types](position = (String(get ), R|second/constant|)) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): R|T?| - @PROPERTY_SETTER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] set([ResolvedTo(STATUS)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: R|T?|): R|kotlin/Unit| + @PROPERTY:R|second/Anno|[Types](position = (String(property ), R|second/constant|)) field:@FIELD:R|second/Anno|[Types](position = (String(field ), R|second/constant|)) public final [ResolvedTo(ANNOTATION_ARGUMENTS)] var resolveMe: R|T?| = explicitType#() + @PROPERTY_GETTER:R|second/Anno|[Types](position = (String(get ), R|second/constant|)) public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] get(): R|T?| + @PROPERTY_SETTER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] set([ResolvedTo(ANNOTATION_ARGUMENTS)] @SETTER_PARAMETER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) value: R|T?|): R|kotlin/Unit| } @@ -208,9 +208,9 @@ FILE: [ResolvedTo(IMPORTS)] explicitSubstitutionOverrideProperty.kt public final [ResolvedTo(STATUS)] fun explicitType(): R|T?| { LAZY_BLOCK } - @PROPERTY:R|second/Anno|[Types](position = (String(property ), R|second/constant|)) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(STATUS)] var resolveMe: R|T?| = LAZY_EXPRESSION - @PROPERTY_GETTER:R|second/Anno|[Types](position = (String(get ), R|second/constant|)) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): R|T?| - @PROPERTY_SETTER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] set([ResolvedTo(STATUS)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: R|T?|): R|kotlin/Unit| + @PROPERTY:R|second/Anno|[Types](position = (String(property ), R|second/constant|)) field:@FIELD:R|second/Anno|[Types](position = (String(field ), R|second/constant|)) public final [ResolvedTo(ANNOTATION_ARGUMENTS)] var resolveMe: R|T?| = explicitType#() + @PROPERTY_GETTER:R|second/Anno|[Types](position = (String(get ), R|second/constant|)) public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] get(): R|T?| + @PROPERTY_SETTER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] set([ResolvedTo(ANNOTATION_ARGUMENTS)] @SETTER_PARAMETER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) value: R|T?|): R|kotlin/Unit| } diff --git a/analysis/low-level-api-fir/testData/lazyResolve/explicitSubstitutionOverridePropertyScript.txt b/analysis/low-level-api-fir/testData/lazyResolve/explicitSubstitutionOverridePropertyScript.txt index 332459a629d..38f2e79de98 100644 --- a/analysis/low-level-api-fir/testData/lazyResolve/explicitSubstitutionOverridePropertyScript.txt +++ b/analysis/low-level-api-fir/testData/lazyResolve/explicitSubstitutionOverridePropertyScript.txt @@ -79,9 +79,9 @@ FILE: [ResolvedTo(IMPORTS)] explicitSubstitutionOverridePropertyScript.kts public final [ResolvedTo(STATUS)] fun explicitType(): R|T?| { LAZY_BLOCK } - @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(STATUS)] var resolveMe: R|T?| = LAZY_EXPRESSION - @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): R|T?| - @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] set([ResolvedTo(STATUS)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: R|T?|): R|kotlin/Unit| + @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(EXPECT_ACTUAL_MATCHING)] var resolveMe: R|T?| = LAZY_EXPRESSION + @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=AbstractClass] get(): R|T?| + @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=AbstractClass] set([ResolvedTo(EXPECT_ACTUAL_MATCHING)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: R|T?|): R|kotlin/Unit| } @@ -123,9 +123,9 @@ FILE: [ResolvedTo(IMPORTS)] explicitSubstitutionOverridePropertyScript.kts public final [ResolvedTo(STATUS)] fun explicitType(): R|T?| { LAZY_BLOCK } - @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(STATUS)] var resolveMe: R|T?| = LAZY_EXPRESSION - @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): R|T?| - @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] set([ResolvedTo(STATUS)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: R|T?|): R|kotlin/Unit| + @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(CONTRACTS)] var resolveMe: R|T?| = explicitType#() + @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(CONTRACTS)] [ContainingClassKey=AbstractClass] get(): R|T?| + @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(CONTRACTS)] [ContainingClassKey=AbstractClass] set([ResolvedTo(CONTRACTS)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: R|T?|): R|kotlin/Unit| } @@ -167,9 +167,9 @@ FILE: [ResolvedTo(IMPORTS)] explicitSubstitutionOverridePropertyScript.kts public final [ResolvedTo(STATUS)] fun explicitType(): R|T?| { LAZY_BLOCK } - @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(STATUS)] var resolveMe: R|T?| = LAZY_EXPRESSION - @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): R|T?| - @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] set([ResolvedTo(STATUS)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: R|T?|): R|kotlin/Unit| + @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] var resolveMe: R|T?| = explicitType#() + @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=AbstractClass] get(): R|T?| + @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=AbstractClass] set([ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: R|T?|): R|kotlin/Unit| } @@ -211,9 +211,9 @@ FILE: [ResolvedTo(IMPORTS)] explicitSubstitutionOverridePropertyScript.kts public final [ResolvedTo(STATUS)] fun explicitType(): R|T?| { LAZY_BLOCK } - @PROPERTY:R|second/Anno|[Types](position = (String(property ), R|second/constant|)) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(STATUS)] var resolveMe: R|T?| = LAZY_EXPRESSION - @PROPERTY_GETTER:R|second/Anno|[Types](position = (String(get ), R|second/constant|)) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): R|T?| - @PROPERTY_SETTER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] set([ResolvedTo(STATUS)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: R|T?|): R|kotlin/Unit| + @PROPERTY:R|second/Anno|[Types](position = (String(property ), R|second/constant|)) field:@FIELD:R|second/Anno|[Types](position = (String(field ), R|second/constant|)) public final [ResolvedTo(ANNOTATION_ARGUMENTS)] var resolveMe: R|T?| = explicitType#() + @PROPERTY_GETTER:R|second/Anno|[Types](position = (String(get ), R|second/constant|)) public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] get(): R|T?| + @PROPERTY_SETTER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] set([ResolvedTo(ANNOTATION_ARGUMENTS)] @SETTER_PARAMETER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) value: R|T?|): R|kotlin/Unit| } @@ -255,9 +255,9 @@ FILE: [ResolvedTo(IMPORTS)] explicitSubstitutionOverridePropertyScript.kts public final [ResolvedTo(STATUS)] fun explicitType(): R|T?| { LAZY_BLOCK } - @PROPERTY:R|second/Anno|[Types](position = (String(property ), R|second/constant|)) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(STATUS)] var resolveMe: R|T?| = LAZY_EXPRESSION - @PROPERTY_GETTER:R|second/Anno|[Types](position = (String(get ), R|second/constant|)) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): R|T?| - @PROPERTY_SETTER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] set([ResolvedTo(STATUS)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: R|T?|): R|kotlin/Unit| + @PROPERTY:R|second/Anno|[Types](position = (String(property ), R|second/constant|)) field:@FIELD:R|second/Anno|[Types](position = (String(field ), R|second/constant|)) public final [ResolvedTo(ANNOTATION_ARGUMENTS)] var resolveMe: R|T?| = explicitType#() + @PROPERTY_GETTER:R|second/Anno|[Types](position = (String(get ), R|second/constant|)) public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] get(): R|T?| + @PROPERTY_SETTER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] set([ResolvedTo(ANNOTATION_ARGUMENTS)] @SETTER_PARAMETER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) value: R|T?|): R|kotlin/Unit| } diff --git a/analysis/low-level-api-fir/testData/lazyResolve/fakeOverride.txt b/analysis/low-level-api-fir/testData/lazyResolve/fakeOverride.txt index fbbafd3b4eb..73eec623288 100644 --- a/analysis/low-level-api-fir/testData/lazyResolve/fakeOverride.txt +++ b/analysis/low-level-api-fir/testData/lazyResolve/fakeOverride.txt @@ -482,13 +482,13 @@ FILE: [ResolvedTo(IMPORTS)] fakeOverride.kt LAZY_super } - public abstract [ResolvedTo(STATUS)] var kind: R|Kind| - public [ResolvedTo(STATUS)] [ContainingClassKey=IrConst] get(): R|Kind| - public [ResolvedTo(STATUS)] [ContainingClassKey=IrConst] set([ResolvedTo(STATUS)] value: R|Kind|): R|kotlin/Unit| + public abstract [ResolvedTo(CONTRACTS)] var kind: R|Kind| + public [ResolvedTo(CONTRACTS)] [ContainingClassKey=IrConst] get(): R|Kind| + public [ResolvedTo(CONTRACTS)] [ContainingClassKey=IrConst] set([ResolvedTo(CONTRACTS)] value: R|Kind|): R|kotlin/Unit| - public abstract [ResolvedTo(STATUS)] var value: R|T| - public [ResolvedTo(STATUS)] [ContainingClassKey=IrConst] get(): R|T| - public [ResolvedTo(STATUS)] [ContainingClassKey=IrConst] set([ResolvedTo(STATUS)] value: R|T|): R|kotlin/Unit| + public abstract [ResolvedTo(CONTRACTS)] var value: R|T| + public [ResolvedTo(CONTRACTS)] [ContainingClassKey=IrConst] get(): R|T| + public [ResolvedTo(CONTRACTS)] [ContainingClassKey=IrConst] set([ResolvedTo(CONTRACTS)] value: R|T|): R|kotlin/Unit| } diff --git a/analysis/low-level-api-fir/testData/lazyResolve/fakeOverrideScript.txt b/analysis/low-level-api-fir/testData/lazyResolve/fakeOverrideScript.txt index 3bf2ae27f81..e04530161ad 100644 --- a/analysis/low-level-api-fir/testData/lazyResolve/fakeOverrideScript.txt +++ b/analysis/low-level-api-fir/testData/lazyResolve/fakeOverrideScript.txt @@ -565,13 +565,13 @@ FILE: [ResolvedTo(IMPORTS)] fakeOverrideScript.kts LAZY_super } - public abstract [ResolvedTo(STATUS)] var kind: R|Kind| - public [ResolvedTo(STATUS)] [ContainingClassKey=IrConst] get(): R|Kind| - public [ResolvedTo(STATUS)] [ContainingClassKey=IrConst] set([ResolvedTo(STATUS)] value: R|Kind|): R|kotlin/Unit| + public abstract [ResolvedTo(CONTRACTS)] var kind: R|Kind| + public [ResolvedTo(CONTRACTS)] [ContainingClassKey=IrConst] get(): R|Kind| + public [ResolvedTo(CONTRACTS)] [ContainingClassKey=IrConst] set([ResolvedTo(CONTRACTS)] value: R|Kind|): R|kotlin/Unit| - public abstract [ResolvedTo(STATUS)] var value: R|T| - public [ResolvedTo(STATUS)] [ContainingClassKey=IrConst] get(): R|T| - public [ResolvedTo(STATUS)] [ContainingClassKey=IrConst] set([ResolvedTo(STATUS)] value: R|T|): R|kotlin/Unit| + public abstract [ResolvedTo(CONTRACTS)] var value: R|T| + public [ResolvedTo(CONTRACTS)] [ContainingClassKey=IrConst] get(): R|T| + public [ResolvedTo(CONTRACTS)] [ContainingClassKey=IrConst] set([ResolvedTo(CONTRACTS)] value: R|T|): R|kotlin/Unit| } @@ -632,3 +632,4 @@ FILE: [ResolvedTo(BODY_RESOLVE)] fakeOverrideScript.kts public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=IrConst] set([ResolvedTo(BODY_RESOLVE)] value: R|T|): R|kotlin/Unit| } + diff --git a/analysis/low-level-api-fir/testData/lazyResolve/implicitSubstitutionOverrideProperty.txt b/analysis/low-level-api-fir/testData/lazyResolve/implicitSubstitutionOverrideProperty.txt index 525fd3ee467..eca2ea82cc8 100644 --- a/analysis/low-level-api-fir/testData/lazyResolve/implicitSubstitutionOverrideProperty.txt +++ b/analysis/low-level-api-fir/testData/lazyResolve/implicitSubstitutionOverrideProperty.txt @@ -64,9 +64,9 @@ FILE: [ResolvedTo(IMPORTS)] implicitSubstitutionOverrideProperty.kt public final [ResolvedTo(STATUS)] fun explicitType(): R|T?| { LAZY_BLOCK } - @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(STATUS)] var resolveMe: = LAZY_EXPRESSION - @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): - @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] set([ResolvedTo(STATUS)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: ): R|kotlin/Unit| + @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(EXPECT_ACTUAL_MATCHING)] var resolveMe: = LAZY_EXPRESSION + @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=AbstractClass] get(): + @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=AbstractClass] set([ResolvedTo(EXPECT_ACTUAL_MATCHING)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: ): R|kotlin/Unit| } @@ -100,9 +100,9 @@ FILE: [ResolvedTo(IMPORTS)] implicitSubstitutionOverrideProperty.kt public final [ResolvedTo(STATUS)] fun explicitType(): R|T?| { LAZY_BLOCK } - @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(STATUS)] var resolveMe: = LAZY_EXPRESSION - @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): - @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] set([ResolvedTo(STATUS)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: ): R|kotlin/Unit| + @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(CONTRACTS)] var resolveMe: = explicitType#() + @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(CONTRACTS)] [ContainingClassKey=AbstractClass] get(): + @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(CONTRACTS)] [ContainingClassKey=AbstractClass] set([ResolvedTo(CONTRACTS)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: ): R|kotlin/Unit| } @@ -176,9 +176,9 @@ FILE: [ResolvedTo(IMPORTS)] implicitSubstitutionOverrideProperty.kt ^explicitType Null(null) } - @PROPERTY:R|second/Anno|[Types](position = (String(property ), R|second/constant|)) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] var resolveMe: R|T?| = this@R|second/AbstractClass|.R|second/AbstractClass.explicitType|() - @PROPERTY_GETTER:R|second/Anno|[Types](position = (String(get ), R|second/constant|)) public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=AbstractClass] get(): R|T?| - @PROPERTY_SETTER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=AbstractClass] set([ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: R|T?|): R|kotlin/Unit| + @PROPERTY:R|second/Anno|[Types](position = (String(property ), R|second/constant|)) field:@FIELD:R|second/Anno|[Types](position = (String(field ), R|second/constant|)) public final [ResolvedTo(ANNOTATION_ARGUMENTS)] var resolveMe: R|T?| = this@R|second/AbstractClass|.R|second/AbstractClass.explicitType|() + @PROPERTY_GETTER:R|second/Anno|[Types](position = (String(get ), R|second/constant|)) public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] get(): R|T?| + @PROPERTY_SETTER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] set([ResolvedTo(ANNOTATION_ARGUMENTS)] @SETTER_PARAMETER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) value: R|T?|): R|kotlin/Unit| } @@ -214,9 +214,9 @@ FILE: [ResolvedTo(IMPORTS)] implicitSubstitutionOverrideProperty.kt ^explicitType Null(null) } - @PROPERTY:R|second/Anno|[Types](position = (String(property ), R|second/constant|)) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] var resolveMe: R|T?| = this@R|second/AbstractClass|.R|second/AbstractClass.explicitType|() - @PROPERTY_GETTER:R|second/Anno|[Types](position = (String(get ), R|second/constant|)) public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=AbstractClass] get(): R|T?| - @PROPERTY_SETTER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=AbstractClass] set([ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: R|T?|): R|kotlin/Unit| + @PROPERTY:R|second/Anno|[Types](position = (String(property ), R|second/constant|)) field:@FIELD:R|second/Anno|[Types](position = (String(field ), R|second/constant|)) public final [ResolvedTo(ANNOTATION_ARGUMENTS)] var resolveMe: R|T?| = this@R|second/AbstractClass|.R|second/AbstractClass.explicitType|() + @PROPERTY_GETTER:R|second/Anno|[Types](position = (String(get ), R|second/constant|)) public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] get(): R|T?| + @PROPERTY_SETTER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] set([ResolvedTo(ANNOTATION_ARGUMENTS)] @SETTER_PARAMETER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) value: R|T?|): R|kotlin/Unit| } diff --git a/analysis/low-level-api-fir/testData/lazyResolve/implicitSubstitutionOverridePropertyScript.txt b/analysis/low-level-api-fir/testData/lazyResolve/implicitSubstitutionOverridePropertyScript.txt index c0256e96357..07c8f62da93 100644 --- a/analysis/low-level-api-fir/testData/lazyResolve/implicitSubstitutionOverridePropertyScript.txt +++ b/analysis/low-level-api-fir/testData/lazyResolve/implicitSubstitutionOverridePropertyScript.txt @@ -79,9 +79,9 @@ FILE: [ResolvedTo(IMPORTS)] implicitSubstitutionOverridePropertyScript.kts public final [ResolvedTo(STATUS)] fun explicitType(): R|T?| { LAZY_BLOCK } - @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(STATUS)] var resolveMe: = LAZY_EXPRESSION - @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): - @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] set([ResolvedTo(STATUS)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: ): R|kotlin/Unit| + @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(EXPECT_ACTUAL_MATCHING)] var resolveMe: = LAZY_EXPRESSION + @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=AbstractClass] get(): + @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=AbstractClass] set([ResolvedTo(EXPECT_ACTUAL_MATCHING)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: ): R|kotlin/Unit| } @@ -123,9 +123,9 @@ FILE: [ResolvedTo(IMPORTS)] implicitSubstitutionOverridePropertyScript.kts public final [ResolvedTo(STATUS)] fun explicitType(): R|T?| { LAZY_BLOCK } - @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(STATUS)] var resolveMe: = LAZY_EXPRESSION - @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): - @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] set([ResolvedTo(STATUS)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: ): R|kotlin/Unit| + @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(CONTRACTS)] var resolveMe: = explicitType#() + @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(CONTRACTS)] [ContainingClassKey=AbstractClass] get(): + @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(CONTRACTS)] [ContainingClassKey=AbstractClass] set([ResolvedTo(CONTRACTS)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: ): R|kotlin/Unit| } @@ -215,9 +215,9 @@ FILE: [ResolvedTo(IMPORTS)] implicitSubstitutionOverridePropertyScript.kts ^explicitType Null(null) } - @PROPERTY:R|second/Anno|[Types](position = (String(property ), R|second/constant|)) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] var resolveMe: R|T?| = this@R|second/AbstractClass|.R|second/AbstractClass.explicitType|() - @PROPERTY_GETTER:R|second/Anno|[Types](position = (String(get ), R|second/constant|)) public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=AbstractClass] get(): R|T?| - @PROPERTY_SETTER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=AbstractClass] set([ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: R|T?|): R|kotlin/Unit| + @PROPERTY:R|second/Anno|[Types](position = (String(property ), R|second/constant|)) field:@FIELD:R|second/Anno|[Types](position = (String(field ), R|second/constant|)) public final [ResolvedTo(ANNOTATION_ARGUMENTS)] var resolveMe: R|T?| = this@R|second/AbstractClass|.R|second/AbstractClass.explicitType|() + @PROPERTY_GETTER:R|second/Anno|[Types](position = (String(get ), R|second/constant|)) public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] get(): R|T?| + @PROPERTY_SETTER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] set([ResolvedTo(ANNOTATION_ARGUMENTS)] @SETTER_PARAMETER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) value: R|T?|): R|kotlin/Unit| } @@ -261,9 +261,9 @@ FILE: [ResolvedTo(IMPORTS)] implicitSubstitutionOverridePropertyScript.kts ^explicitType Null(null) } - @PROPERTY:R|second/Anno|[Types](position = (String(property ), R|second/constant|)) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] var resolveMe: R|T?| = this@R|second/AbstractClass|.R|second/AbstractClass.explicitType|() - @PROPERTY_GETTER:R|second/Anno|[Types](position = (String(get ), R|second/constant|)) public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=AbstractClass] get(): R|T?| - @PROPERTY_SETTER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=AbstractClass] set([ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: R|T?|): R|kotlin/Unit| + @PROPERTY:R|second/Anno|[Types](position = (String(property ), R|second/constant|)) field:@FIELD:R|second/Anno|[Types](position = (String(field ), R|second/constant|)) public final [ResolvedTo(ANNOTATION_ARGUMENTS)] var resolveMe: R|T?| = this@R|second/AbstractClass|.R|second/AbstractClass.explicitType|() + @PROPERTY_GETTER:R|second/Anno|[Types](position = (String(get ), R|second/constant|)) public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] get(): R|T?| + @PROPERTY_SETTER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] set([ResolvedTo(ANNOTATION_ARGUMENTS)] @SETTER_PARAMETER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) value: R|T?|): R|kotlin/Unit| } diff --git a/analysis/low-level-api-fir/testData/lazyResolve/propertyDelegateWithImplicitType.txt b/analysis/low-level-api-fir/testData/lazyResolve/propertyDelegateWithImplicitType.txt index 61a20840627..4b879d4e4b2 100644 --- a/analysis/low-level-api-fir/testData/lazyResolve/propertyDelegateWithImplicitType.txt +++ b/analysis/low-level-api-fir/testData/lazyResolve/propertyDelegateWithImplicitType.txt @@ -60,9 +60,9 @@ FILE: [ResolvedTo(IMPORTS)] propertyDelegateWithImplicitType.kt public abstract [ResolvedTo(STATUS)] interface Interface : R|kotlin/Any| { public open [ResolvedTo(STATUS)] fun explicitType(): R|kotlin/String?| { LAZY_BLOCK } - @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(STATUS)] var resolveMe: = LAZY_EXPRESSION - @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=Interface] get(): - @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=Interface] set([ResolvedTo(STATUS)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: ): R|kotlin/Unit| + @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(EXPECT_ACTUAL_MATCHING)] var resolveMe: = LAZY_EXPRESSION + @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=Interface] get(): + @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=Interface] set([ResolvedTo(EXPECT_ACTUAL_MATCHING)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: ): R|kotlin/Unit| } @@ -94,9 +94,9 @@ FILE: [ResolvedTo(IMPORTS)] propertyDelegateWithImplicitType.kt public abstract [ResolvedTo(STATUS)] interface Interface : R|kotlin/Any| { public open [ResolvedTo(STATUS)] fun explicitType(): R|kotlin/String?| { LAZY_BLOCK } - @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(STATUS)] var resolveMe: = LAZY_EXPRESSION - @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=Interface] get(): - @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=Interface] set([ResolvedTo(STATUS)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: ): R|kotlin/Unit| + @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(CONTRACTS)] var resolveMe: = explicitType#() + @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(CONTRACTS)] [ContainingClassKey=Interface] get(): + @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(CONTRACTS)] [ContainingClassKey=Interface] set([ResolvedTo(CONTRACTS)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: ): R|kotlin/Unit| } @@ -166,9 +166,9 @@ FILE: [ResolvedTo(IMPORTS)] propertyDelegateWithImplicitType.kt ^explicitType Null(null) } - @PROPERTY:R|second/Anno|[Types](position = (String(property ), R|second/constant|)) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] var resolveMe: R|kotlin/String?| = this@R|second/Interface|.R|second/Interface.explicitType|() - @PROPERTY_GETTER:R|second/Anno|[Types](position = (String(get ), R|second/constant|)) public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=Interface] get(): R|kotlin/String?| - @PROPERTY_SETTER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=Interface] set([ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: R|kotlin/String?|): R|kotlin/Unit| + @PROPERTY:R|second/Anno|[Types](position = (String(property ), R|second/constant|)) field:@FIELD:R|second/Anno|[Types](position = (String(field ), R|second/constant|)) public open [ResolvedTo(ANNOTATION_ARGUMENTS)] var resolveMe: R|kotlin/String?| = this@R|second/Interface|.R|second/Interface.explicitType|() + @PROPERTY_GETTER:R|second/Anno|[Types](position = (String(get ), R|second/constant|)) public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=Interface] get(): R|kotlin/String?| + @PROPERTY_SETTER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=Interface] set([ResolvedTo(ANNOTATION_ARGUMENTS)] @SETTER_PARAMETER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) value: R|kotlin/String?|): R|kotlin/Unit| } @@ -202,9 +202,9 @@ FILE: [ResolvedTo(IMPORTS)] propertyDelegateWithImplicitType.kt ^explicitType Null(null) } - @PROPERTY:R|second/Anno|[Types](position = (String(property ), R|second/constant|)) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] var resolveMe: R|kotlin/String?| = this@R|second/Interface|.R|second/Interface.explicitType|() - @PROPERTY_GETTER:R|second/Anno|[Types](position = (String(get ), R|second/constant|)) public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=Interface] get(): R|kotlin/String?| - @PROPERTY_SETTER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=Interface] set([ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: R|kotlin/String?|): R|kotlin/Unit| + @PROPERTY:R|second/Anno|[Types](position = (String(property ), R|second/constant|)) field:@FIELD:R|second/Anno|[Types](position = (String(field ), R|second/constant|)) public open [ResolvedTo(ANNOTATION_ARGUMENTS)] var resolveMe: R|kotlin/String?| = this@R|second/Interface|.R|second/Interface.explicitType|() + @PROPERTY_GETTER:R|second/Anno|[Types](position = (String(get ), R|second/constant|)) public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=Interface] get(): R|kotlin/String?| + @PROPERTY_SETTER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=Interface] set([ResolvedTo(ANNOTATION_ARGUMENTS)] @SETTER_PARAMETER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) value: R|kotlin/String?|): R|kotlin/Unit| } diff --git a/analysis/low-level-api-fir/testData/lazyResolve/propertyDelegateWithImplicitTypeScript.txt b/analysis/low-level-api-fir/testData/lazyResolve/propertyDelegateWithImplicitTypeScript.txt index 6a69be29116..a17bc093c99 100644 --- a/analysis/low-level-api-fir/testData/lazyResolve/propertyDelegateWithImplicitTypeScript.txt +++ b/analysis/low-level-api-fir/testData/lazyResolve/propertyDelegateWithImplicitTypeScript.txt @@ -75,9 +75,9 @@ FILE: [ResolvedTo(IMPORTS)] propertyDelegateWithImplicitTypeScript.kts public abstract [ResolvedTo(STATUS)] interface Interface : R|kotlin/Any| { public open [ResolvedTo(STATUS)] fun explicitType(): R|kotlin/String?| { LAZY_BLOCK } - @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(STATUS)] var resolveMe: = LAZY_EXPRESSION - @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=Interface] get(): - @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=Interface] set([ResolvedTo(STATUS)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: ): R|kotlin/Unit| + @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(EXPECT_ACTUAL_MATCHING)] var resolveMe: = LAZY_EXPRESSION + @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=Interface] get(): + @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=Interface] set([ResolvedTo(EXPECT_ACTUAL_MATCHING)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: ): R|kotlin/Unit| } @@ -117,9 +117,9 @@ FILE: [ResolvedTo(IMPORTS)] propertyDelegateWithImplicitTypeScript.kts public abstract [ResolvedTo(STATUS)] interface Interface : R|kotlin/Any| { public open [ResolvedTo(STATUS)] fun explicitType(): R|kotlin/String?| { LAZY_BLOCK } - @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(STATUS)] var resolveMe: = LAZY_EXPRESSION - @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=Interface] get(): - @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=Interface] set([ResolvedTo(STATUS)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: ): R|kotlin/Unit| + @PROPERTY:R|second/Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(CONTRACTS)] var resolveMe: = explicitType#() + @PROPERTY_GETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(CONTRACTS)] [ContainingClassKey=Interface] get(): + @PROPERTY_SETTER:R|second/Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(CONTRACTS)] [ContainingClassKey=Interface] set([ResolvedTo(CONTRACTS)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: ): R|kotlin/Unit| } @@ -205,9 +205,9 @@ FILE: [ResolvedTo(IMPORTS)] propertyDelegateWithImplicitTypeScript.kts ^explicitType Null(null) } - @PROPERTY:R|second/Anno|[Types](position = (String(property ), R|second/constant|)) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] var resolveMe: R|kotlin/String?| = this@R|second/Interface|.R|second/Interface.explicitType|() - @PROPERTY_GETTER:R|second/Anno|[Types](position = (String(get ), R|second/constant|)) public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=Interface] get(): R|kotlin/String?| - @PROPERTY_SETTER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=Interface] set([ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: R|kotlin/String?|): R|kotlin/Unit| + @PROPERTY:R|second/Anno|[Types](position = (String(property ), R|second/constant|)) field:@FIELD:R|second/Anno|[Types](position = (String(field ), R|second/constant|)) public open [ResolvedTo(ANNOTATION_ARGUMENTS)] var resolveMe: R|kotlin/String?| = this@R|second/Interface|.R|second/Interface.explicitType|() + @PROPERTY_GETTER:R|second/Anno|[Types](position = (String(get ), R|second/constant|)) public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=Interface] get(): R|kotlin/String?| + @PROPERTY_SETTER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=Interface] set([ResolvedTo(ANNOTATION_ARGUMENTS)] @SETTER_PARAMETER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) value: R|kotlin/String?|): R|kotlin/Unit| } @@ -249,9 +249,9 @@ FILE: [ResolvedTo(IMPORTS)] propertyDelegateWithImplicitTypeScript.kts ^explicitType Null(null) } - @PROPERTY:R|second/Anno|[Types](position = (String(property ), R|second/constant|)) field:@FIELD:R|second/Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] var resolveMe: R|kotlin/String?| = this@R|second/Interface|.R|second/Interface.explicitType|() - @PROPERTY_GETTER:R|second/Anno|[Types](position = (String(get ), R|second/constant|)) public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=Interface] get(): R|kotlin/String?| - @PROPERTY_SETTER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=Interface] set([ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] @SETTER_PARAMETER:R|second/Anno|[Types](LAZY_EXPRESSION) value: R|kotlin/String?|): R|kotlin/Unit| + @PROPERTY:R|second/Anno|[Types](position = (String(property ), R|second/constant|)) field:@FIELD:R|second/Anno|[Types](position = (String(field ), R|second/constant|)) public open [ResolvedTo(ANNOTATION_ARGUMENTS)] var resolveMe: R|kotlin/String?| = this@R|second/Interface|.R|second/Interface.explicitType|() + @PROPERTY_GETTER:R|second/Anno|[Types](position = (String(get ), R|second/constant|)) public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=Interface] get(): R|kotlin/String?| + @PROPERTY_SETTER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=Interface] set([ResolvedTo(ANNOTATION_ARGUMENTS)] @SETTER_PARAMETER:R|second/Anno|[Types](position = (String(set ), R|second/constant|)) value: R|kotlin/String?|): R|kotlin/Unit| } diff --git a/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverride.txt b/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverride.txt index 3287c40cd6f..c13536d0663 100644 --- a/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverride.txt +++ b/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverride.txt @@ -35,8 +35,8 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverride.kt LAZY_super } - public abstract [ResolvedTo(STATUS)] val R|T|.property: R|T| - public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): R|T| + public abstract [ResolvedTo(EXPECT_ACTUAL_MATCHING)] val R|T|.property: R|T| + public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=AbstractClass] get(): R|T| } @@ -56,8 +56,8 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverride.kt LAZY_super } - public abstract [ResolvedTo(STATUS)] val R|T|.property: R|T| - public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): R|T| + public abstract [ResolvedTo(CONTRACTS)] val R|T|.property: R|T| + public [ResolvedTo(CONTRACTS)] [ContainingClassKey=AbstractClass] get(): R|T| } @@ -77,8 +77,8 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverride.kt LAZY_super } - public abstract [ResolvedTo(STATUS)] val R|T|.property: R|T| - public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): R|T| + public abstract [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val R|T|.property: R|T| + public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=AbstractClass] get(): R|T| } @@ -98,8 +98,8 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverride.kt LAZY_super } - public abstract [ResolvedTo(STATUS)] val R|T|.property: R|T| - public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): R|T| + public abstract [ResolvedTo(ANNOTATION_ARGUMENTS)] val R|T|.property: R|T| + public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] get(): R|T| } @@ -119,8 +119,8 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverride.kt LAZY_super } - public abstract [ResolvedTo(STATUS)] val R|T|.property: R|T| - public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): R|T| + public abstract [ResolvedTo(ANNOTATION_ARGUMENTS)] val R|T|.property: R|T| + public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] get(): R|T| } diff --git a/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideFunction.txt b/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideFunction.txt index e2d5ba9bfde..5acd564cabd 100644 --- a/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideFunction.txt +++ b/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideFunction.txt @@ -32,7 +32,7 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideFunction.kt LAZY_super } - public abstract [ResolvedTo(STATUS)] fun R|T|.resolveMe([ResolvedTo(STATUS)] param: R|T|): R|T| + public abstract [ResolvedTo(EXPECT_ACTUAL_MATCHING)] fun R|T|.resolveMe([ResolvedTo(EXPECT_ACTUAL_MATCHING)] param: R|T|): R|T| } @@ -51,7 +51,7 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideFunction.kt LAZY_super } - public abstract [ResolvedTo(STATUS)] fun R|T|.resolveMe([ResolvedTo(STATUS)] param: R|T|): R|T| + public abstract [ResolvedTo(CONTRACTS)] fun R|T|.resolveMe([ResolvedTo(CONTRACTS)] param: R|T|): R|T| } @@ -70,7 +70,7 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideFunction.kt LAZY_super } - public abstract [ResolvedTo(STATUS)] fun R|T|.resolveMe([ResolvedTo(STATUS)] param: R|T|): R|T| + public abstract [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] fun R|T|.resolveMe([ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] param: R|T|): R|T| } @@ -89,7 +89,7 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideFunction.kt LAZY_super } - public abstract [ResolvedTo(STATUS)] fun R|T|.resolveMe([ResolvedTo(STATUS)] param: R|T|): R|T| + public abstract [ResolvedTo(ANNOTATION_ARGUMENTS)] fun R|T|.resolveMe([ResolvedTo(ANNOTATION_ARGUMENTS)] param: R|T|): R|T| } @@ -108,7 +108,7 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideFunction.kt LAZY_super } - public abstract [ResolvedTo(STATUS)] fun R|T|.resolveMe([ResolvedTo(STATUS)] param: R|T|): R|T| + public abstract [ResolvedTo(ANNOTATION_ARGUMENTS)] fun R|T|.resolveMe([ResolvedTo(ANNOTATION_ARGUMENTS)] param: R|T|): R|T| } diff --git a/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideFunctionScript.txt b/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideFunctionScript.txt index a2cc6640d01..5e2ebbd04db 100644 --- a/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideFunctionScript.txt +++ b/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideFunctionScript.txt @@ -43,7 +43,7 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideFunctionScript.kts LAZY_super } - public abstract [ResolvedTo(STATUS)] fun R|T|.resolveMe([ResolvedTo(STATUS)] param: R|T|): R|T| + public abstract [ResolvedTo(EXPECT_ACTUAL_MATCHING)] fun R|T|.resolveMe([ResolvedTo(EXPECT_ACTUAL_MATCHING)] param: R|T|): R|T| } @@ -68,7 +68,7 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideFunctionScript.kts LAZY_super } - public abstract [ResolvedTo(STATUS)] fun R|T|.resolveMe([ResolvedTo(STATUS)] param: R|T|): R|T| + public abstract [ResolvedTo(CONTRACTS)] fun R|T|.resolveMe([ResolvedTo(CONTRACTS)] param: R|T|): R|T| } @@ -93,7 +93,7 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideFunctionScript.kts LAZY_super } - public abstract [ResolvedTo(STATUS)] fun R|T|.resolveMe([ResolvedTo(STATUS)] param: R|T|): R|T| + public abstract [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] fun R|T|.resolveMe([ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] param: R|T|): R|T| } @@ -118,7 +118,7 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideFunctionScript.kts LAZY_super } - public abstract [ResolvedTo(STATUS)] fun R|T|.resolveMe([ResolvedTo(STATUS)] param: R|T|): R|T| + public abstract [ResolvedTo(ANNOTATION_ARGUMENTS)] fun R|T|.resolveMe([ResolvedTo(ANNOTATION_ARGUMENTS)] param: R|T|): R|T| } @@ -143,7 +143,7 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideFunctionScript.kts LAZY_super } - public abstract [ResolvedTo(STATUS)] fun R|T|.resolveMe([ResolvedTo(STATUS)] param: R|T|): R|T| + public abstract [ResolvedTo(ANNOTATION_ARGUMENTS)] fun R|T|.resolveMe([ResolvedTo(ANNOTATION_ARGUMENTS)] param: R|T|): R|T| } diff --git a/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideFunctionWithImplicitType.txt b/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideFunctionWithImplicitType.txt index dd9ccc7df31..b9a4b302872 100644 --- a/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideFunctionWithImplicitType.txt +++ b/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideFunctionWithImplicitType.txt @@ -36,7 +36,7 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideFunctionWithImplicitType.kt public final [ResolvedTo(STATUS)] fun explicitType(): R|T?| { LAZY_BLOCK } - public final [ResolvedTo(STATUS)] fun R|T|.resolveMe(): { LAZY_BLOCK } + public final [ResolvedTo(EXPECT_ACTUAL_MATCHING)] fun R|T|.resolveMe(): { LAZY_BLOCK } } @@ -57,7 +57,7 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideFunctionWithImplicitType.kt public final [ResolvedTo(STATUS)] fun explicitType(): R|T?| { LAZY_BLOCK } - public final [ResolvedTo(STATUS)] fun R|T|.resolveMe(): { LAZY_BLOCK } + public final [ResolvedTo(CONTRACTS)] fun R|T|.resolveMe(): { LAZY_BLOCK } } @@ -105,7 +105,7 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideFunctionWithImplicitType.kt ^explicitType Null(null) } - public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] fun R|T|.resolveMe(): R|T?| { + public final [ResolvedTo(ANNOTATION_ARGUMENTS)] fun R|T|.resolveMe(): R|T?| { ^resolveMe this@R|second/AbstractClass|.R|second/AbstractClass.explicitType|() } @@ -130,7 +130,7 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideFunctionWithImplicitType.kt ^explicitType Null(null) } - public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] fun R|T|.resolveMe(): R|T?| { + public final [ResolvedTo(ANNOTATION_ARGUMENTS)] fun R|T|.resolveMe(): R|T?| { ^resolveMe this@R|second/AbstractClass|.R|second/AbstractClass.explicitType|() } diff --git a/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideFunctionWithImplicitTypeScript.txt b/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideFunctionWithImplicitTypeScript.txt index 65ea504a12e..abd6e7ea491 100644 --- a/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideFunctionWithImplicitTypeScript.txt +++ b/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideFunctionWithImplicitTypeScript.txt @@ -47,7 +47,7 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideFunctionWithImplicitTypeScri public final [ResolvedTo(STATUS)] fun explicitType(): R|T?| { LAZY_BLOCK } - public final [ResolvedTo(STATUS)] fun R|T|.resolveMe(): { LAZY_BLOCK } + public final [ResolvedTo(EXPECT_ACTUAL_MATCHING)] fun R|T|.resolveMe(): { LAZY_BLOCK } } @@ -74,7 +74,7 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideFunctionWithImplicitTypeScri public final [ResolvedTo(STATUS)] fun explicitType(): R|T?| { LAZY_BLOCK } - public final [ResolvedTo(STATUS)] fun R|T|.resolveMe(): { LAZY_BLOCK } + public final [ResolvedTo(CONTRACTS)] fun R|T|.resolveMe(): { LAZY_BLOCK } } @@ -134,7 +134,7 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideFunctionWithImplicitTypeScri ^explicitType Null(null) } - public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] fun R|T|.resolveMe(): R|T?| { + public final [ResolvedTo(ANNOTATION_ARGUMENTS)] fun R|T|.resolveMe(): R|T?| { ^resolveMe this@R|second/AbstractClass|.R|second/AbstractClass.explicitType|() } @@ -165,7 +165,7 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideFunctionWithImplicitTypeScri ^explicitType Null(null) } - public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] fun R|T|.resolveMe(): R|T?| { + public final [ResolvedTo(ANNOTATION_ARGUMENTS)] fun R|T|.resolveMe(): R|T?| { ^resolveMe this@R|second/AbstractClass|.R|second/AbstractClass.explicitType|() } diff --git a/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideInDifferentModules.txt b/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideInDifferentModules.txt index 9f7c2e25568..0d3a6f8a39c 100644 --- a/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideInDifferentModules.txt +++ b/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideInDifferentModules.txt @@ -31,8 +31,8 @@ FILE: [ResolvedTo(IMPORTS)] AbstractClass.kt LAZY_super } - public abstract [ResolvedTo(STATUS)] val property: R|T| - public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): R|T| + public abstract [ResolvedTo(EXPECT_ACTUAL_MATCHING)] val property: R|T| + public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=AbstractClass] get(): R|T| } @@ -54,8 +54,8 @@ FILE: [ResolvedTo(IMPORTS)] AbstractClass.kt LAZY_super } - public abstract [ResolvedTo(STATUS)] val property: R|T| - public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): R|T| + public abstract [ResolvedTo(CONTRACTS)] val property: R|T| + public [ResolvedTo(CONTRACTS)] [ContainingClassKey=AbstractClass] get(): R|T| } @@ -77,8 +77,8 @@ FILE: [ResolvedTo(IMPORTS)] AbstractClass.kt LAZY_super } - public abstract [ResolvedTo(STATUS)] val property: R|T| - public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): R|T| + public abstract [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val property: R|T| + public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=AbstractClass] get(): R|T| } @@ -100,8 +100,8 @@ FILE: [ResolvedTo(IMPORTS)] AbstractClass.kt LAZY_super } - public abstract [ResolvedTo(STATUS)] val property: R|T| - public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): R|T| + public abstract [ResolvedTo(ANNOTATION_ARGUMENTS)] val property: R|T| + public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] get(): R|T| } @@ -123,8 +123,8 @@ FILE: [ResolvedTo(IMPORTS)] AbstractClass.kt LAZY_super } - public abstract [ResolvedTo(STATUS)] val property: R|T| - public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): R|T| + public abstract [ResolvedTo(ANNOTATION_ARGUMENTS)] val property: R|T| + public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] get(): R|T| } diff --git a/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideScript.txt b/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideScript.txt index 30b66d622ae..cc36474f6e0 100644 --- a/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideScript.txt +++ b/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideScript.txt @@ -46,8 +46,8 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideScript.kts LAZY_super } - public abstract [ResolvedTo(STATUS)] val R|T|.property: R|T| - public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): R|T| + public abstract [ResolvedTo(EXPECT_ACTUAL_MATCHING)] val R|T|.property: R|T| + public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=AbstractClass] get(): R|T| } @@ -73,8 +73,8 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideScript.kts LAZY_super } - public abstract [ResolvedTo(STATUS)] val R|T|.property: R|T| - public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): R|T| + public abstract [ResolvedTo(CONTRACTS)] val R|T|.property: R|T| + public [ResolvedTo(CONTRACTS)] [ContainingClassKey=AbstractClass] get(): R|T| } @@ -100,8 +100,8 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideScript.kts LAZY_super } - public abstract [ResolvedTo(STATUS)] val R|T|.property: R|T| - public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): R|T| + public abstract [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val R|T|.property: R|T| + public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=AbstractClass] get(): R|T| } @@ -127,8 +127,8 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideScript.kts LAZY_super } - public abstract [ResolvedTo(STATUS)] val R|T|.property: R|T| - public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): R|T| + public abstract [ResolvedTo(ANNOTATION_ARGUMENTS)] val R|T|.property: R|T| + public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] get(): R|T| } @@ -154,8 +154,8 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideScript.kts LAZY_super } - public abstract [ResolvedTo(STATUS)] val R|T|.property: R|T| - public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): R|T| + public abstract [ResolvedTo(ANNOTATION_ARGUMENTS)] val R|T|.property: R|T| + public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] get(): R|T| } diff --git a/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideWithImplicitType.txt b/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideWithImplicitType.txt index e5ae725410e..e78a8b26a18 100644 --- a/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideWithImplicitType.txt +++ b/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideWithImplicitType.txt @@ -37,8 +37,8 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideWithImplicitType.kt LAZY_super } - public final [ResolvedTo(STATUS)] val property: = LAZY_EXPRESSION - public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): + public final [ResolvedTo(EXPECT_ACTUAL_MATCHING)] val property: = LAZY_EXPRESSION + public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=AbstractClass] get(): public abstract [ResolvedTo(STATUS)] fun foo(): R|T| @@ -60,8 +60,8 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideWithImplicitType.kt LAZY_super } - public final [ResolvedTo(STATUS)] val property: = LAZY_EXPRESSION - public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): + public final [ResolvedTo(CONTRACTS)] val property: = foo#() + public [ResolvedTo(CONTRACTS)] [ContainingClassKey=AbstractClass] get(): public abstract [ResolvedTo(STATUS)] fun foo(): R|T| @@ -106,8 +106,8 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideWithImplicitType.kt LAZY_super } - public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val property: R|T| = this@R|/AbstractClass|.R|/AbstractClass.foo|() - public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=AbstractClass] get(): R|T| + public final [ResolvedTo(ANNOTATION_ARGUMENTS)] val property: R|T| = this@R|/AbstractClass|.R|/AbstractClass.foo|() + public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] get(): R|T| public abstract [ResolvedTo(CONTRACTS)] fun foo(): R|T| @@ -129,8 +129,8 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideWithImplicitType.kt LAZY_super } - public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val property: R|T| = this@R|/AbstractClass|.R|/AbstractClass.foo|() - public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=AbstractClass] get(): R|T| + public final [ResolvedTo(ANNOTATION_ARGUMENTS)] val property: R|T| = this@R|/AbstractClass|.R|/AbstractClass.foo|() + public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] get(): R|T| public abstract [ResolvedTo(CONTRACTS)] fun foo(): R|T| diff --git a/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideWithImplicitTypeAndReceiver.txt b/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideWithImplicitTypeAndReceiver.txt index ec39a559740..0bf43d8b3e9 100644 --- a/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideWithImplicitTypeAndReceiver.txt +++ b/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideWithImplicitTypeAndReceiver.txt @@ -37,8 +37,8 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideWithImplicitTypeAndReceiver. LAZY_super } - public final [ResolvedTo(STATUS)] val R|T|.property: = LAZY_EXPRESSION - public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): + public final [ResolvedTo(EXPECT_ACTUAL_MATCHING)] val R|T|.property: = LAZY_EXPRESSION + public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=AbstractClass] get(): public abstract [ResolvedTo(STATUS)] fun foo(): R|T| @@ -60,8 +60,8 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideWithImplicitTypeAndReceiver. LAZY_super } - public final [ResolvedTo(STATUS)] val R|T|.property: = LAZY_EXPRESSION - public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): + public final [ResolvedTo(CONTRACTS)] val R|T|.property: = foo#() + public [ResolvedTo(CONTRACTS)] [ContainingClassKey=AbstractClass] get(): public abstract [ResolvedTo(STATUS)] fun foo(): R|T| @@ -106,8 +106,8 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideWithImplicitTypeAndReceiver. LAZY_super } - public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val R|T|.property: R|T| = this@R|/AbstractClass|.R|/AbstractClass.foo|() - public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=AbstractClass] get(): R|T| + public final [ResolvedTo(ANNOTATION_ARGUMENTS)] val R|T|.property: R|T| = this@R|/AbstractClass|.R|/AbstractClass.foo|() + public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] get(): R|T| public abstract [ResolvedTo(CONTRACTS)] fun foo(): R|T| @@ -129,8 +129,8 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideWithImplicitTypeAndReceiver. LAZY_super } - public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val R|T|.property: R|T| = this@R|/AbstractClass|.R|/AbstractClass.foo|() - public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=AbstractClass] get(): R|T| + public final [ResolvedTo(ANNOTATION_ARGUMENTS)] val R|T|.property: R|T| = this@R|/AbstractClass|.R|/AbstractClass.foo|() + public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] get(): R|T| public abstract [ResolvedTo(CONTRACTS)] fun foo(): R|T| diff --git a/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideWithImplicitTypeAndReceiverScript.txt b/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideWithImplicitTypeAndReceiverScript.txt index 10e97753797..9f742e3858b 100644 --- a/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideWithImplicitTypeAndReceiverScript.txt +++ b/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideWithImplicitTypeAndReceiverScript.txt @@ -48,8 +48,8 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideWithImplicitTypeAndReceiverS LAZY_super } - public final [ResolvedTo(STATUS)] val R|T|.property: = LAZY_EXPRESSION - public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): + public final [ResolvedTo(EXPECT_ACTUAL_MATCHING)] val R|T|.property: = LAZY_EXPRESSION + public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=AbstractClass] get(): public abstract [ResolvedTo(STATUS)] fun foo(): R|T| @@ -77,8 +77,8 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideWithImplicitTypeAndReceiverS LAZY_super } - public final [ResolvedTo(STATUS)] val R|T|.property: = LAZY_EXPRESSION - public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): + public final [ResolvedTo(CONTRACTS)] val R|T|.property: = foo#() + public [ResolvedTo(CONTRACTS)] [ContainingClassKey=AbstractClass] get(): public abstract [ResolvedTo(STATUS)] fun foo(): R|T| @@ -135,8 +135,8 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideWithImplicitTypeAndReceiverS LAZY_super } - public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val R|T|.property: R|T| = this@R|/AbstractClass|.R|/AbstractClass.foo|() - public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=AbstractClass] get(): R|T| + public final [ResolvedTo(ANNOTATION_ARGUMENTS)] val R|T|.property: R|T| = this@R|/AbstractClass|.R|/AbstractClass.foo|() + public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] get(): R|T| public abstract [ResolvedTo(CONTRACTS)] fun foo(): R|T| @@ -164,8 +164,8 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideWithImplicitTypeAndReceiverS LAZY_super } - public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val R|T|.property: R|T| = this@R|/AbstractClass|.R|/AbstractClass.foo|() - public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=AbstractClass] get(): R|T| + public final [ResolvedTo(ANNOTATION_ARGUMENTS)] val R|T|.property: R|T| = this@R|/AbstractClass|.R|/AbstractClass.foo|() + public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] get(): R|T| public abstract [ResolvedTo(CONTRACTS)] fun foo(): R|T| diff --git a/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideWithImplicitTypeScript.txt b/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideWithImplicitTypeScript.txt index f7f21f51916..32ba8633ecb 100644 --- a/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideWithImplicitTypeScript.txt +++ b/analysis/low-level-api-fir/testData/lazyResolve/substitutionFakeOverrideWithImplicitTypeScript.txt @@ -48,8 +48,8 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideWithImplicitTypeScript.kts LAZY_super } - public final [ResolvedTo(STATUS)] val property: = LAZY_EXPRESSION - public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): + public final [ResolvedTo(EXPECT_ACTUAL_MATCHING)] val property: = LAZY_EXPRESSION + public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=AbstractClass] get(): public abstract [ResolvedTo(STATUS)] fun foo(): R|T| @@ -77,8 +77,8 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideWithImplicitTypeScript.kts LAZY_super } - public final [ResolvedTo(STATUS)] val property: = LAZY_EXPRESSION - public [ResolvedTo(STATUS)] [ContainingClassKey=AbstractClass] get(): + public final [ResolvedTo(CONTRACTS)] val property: = foo#() + public [ResolvedTo(CONTRACTS)] [ContainingClassKey=AbstractClass] get(): public abstract [ResolvedTo(STATUS)] fun foo(): R|T| @@ -135,8 +135,8 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideWithImplicitTypeScript.kts LAZY_super } - public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val property: R|T| = this@R|/AbstractClass|.R|/AbstractClass.foo|() - public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=AbstractClass] get(): R|T| + public final [ResolvedTo(ANNOTATION_ARGUMENTS)] val property: R|T| = this@R|/AbstractClass|.R|/AbstractClass.foo|() + public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] get(): R|T| public abstract [ResolvedTo(CONTRACTS)] fun foo(): R|T| @@ -164,8 +164,8 @@ FILE: [ResolvedTo(IMPORTS)] substitutionFakeOverrideWithImplicitTypeScript.kts LAZY_super } - public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val property: R|T| = this@R|/AbstractClass|.R|/AbstractClass.foo|() - public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=AbstractClass] get(): R|T| + public final [ResolvedTo(ANNOTATION_ARGUMENTS)] val property: R|T| = this@R|/AbstractClass|.R|/AbstractClass.foo|() + public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=AbstractClass] get(): R|T| public abstract [ResolvedTo(CONTRACTS)] fun foo(): R|T| diff --git a/analysis/low-level-api-fir/testData/lazyResolveTypeAnnotations/delegate/delegateWithExplicitType.lazyResolve.txt b/analysis/low-level-api-fir/testData/lazyResolveTypeAnnotations/delegate/delegateWithExplicitType.lazyResolve.txt index d3dc8d4a02c..79ec9cafd16 100644 --- a/analysis/low-level-api-fir/testData/lazyResolveTypeAnnotations/delegate/delegateWithExplicitType.lazyResolve.txt +++ b/analysis/low-level-api-fir/testData/lazyResolveTypeAnnotations/delegate/delegateWithExplicitType.lazyResolve.txt @@ -50,7 +50,7 @@ FILE: [ResolvedTo(IMPORTS)] delegateWithExplicitType.kt } public abstract [ResolvedTo(STATUS)] interface OriginalInterface : R|kotlin/Any| { - @R|Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(STATUS)] fun <@R|Anno|[Types](LAZY_EXPRESSION) [ResolvedTo(STATUS)] F : R|@R|Anno|((String(bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested bound ), prop#)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](LAZY_EXPRESSION) R|@R|Anno|((String(receiver type ), prop#)) kotlin/collections/Collection<@R|Anno|((String(nested receiver type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested receiver type ), prop#)) kotlin/String>>|.explicitType([ResolvedTo(STATUS)] @R|Anno|[Types](LAZY_EXPRESSION) param: R|@R|Anno|((String(parameter type ), prop#)) kotlin/collections/ListIterator<@R|Anno|((String(nested parameter type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested parameter type ), prop#)) kotlin/String>>|): R|@R|Anno|((String(explicitType return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested nested return type ), prop#)) kotlin/Int>>| { LAZY_BLOCK } + @R|Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(EXPECT_ACTUAL_MATCHING)] fun <@R|Anno|[Types](LAZY_EXPRESSION) [ResolvedTo(EXPECT_ACTUAL_MATCHING)] F : R|@R|Anno|((String(bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested bound ), prop#)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](LAZY_EXPRESSION) R|@R|Anno|((String(receiver type ), prop#)) kotlin/collections/Collection<@R|Anno|((String(nested receiver type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested receiver type ), prop#)) kotlin/String>>|.explicitType([ResolvedTo(EXPECT_ACTUAL_MATCHING)] @R|Anno|[Types](LAZY_EXPRESSION) param: R|@R|Anno|((String(parameter type ), prop#)) kotlin/collections/ListIterator<@R|Anno|((String(nested parameter type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested parameter type ), prop#)) kotlin/String>>|): R|@R|Anno|((String(explicitType return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested nested return type ), prop#)) kotlin/Int>>| { LAZY_BLOCK } } @@ -78,7 +78,9 @@ FILE: [ResolvedTo(IMPORTS)] delegateWithExplicitType.kt } public abstract [ResolvedTo(STATUS)] interface OriginalInterface : R|kotlin/Any| { - @R|Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(STATUS)] fun <@R|Anno|[Types](LAZY_EXPRESSION) [ResolvedTo(STATUS)] F : R|@R|Anno|((String(bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested bound ), prop#)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](LAZY_EXPRESSION) R|@R|Anno|((String(receiver type ), prop#)) kotlin/collections/Collection<@R|Anno|((String(nested receiver type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested receiver type ), prop#)) kotlin/String>>|.explicitType([ResolvedTo(STATUS)] @R|Anno|[Types](LAZY_EXPRESSION) param: R|@R|Anno|((String(parameter type ), prop#)) kotlin/collections/ListIterator<@R|Anno|((String(nested parameter type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested parameter type ), prop#)) kotlin/String>>|): R|@R|Anno|((String(explicitType return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested nested return type ), prop#)) kotlin/Int>>| { LAZY_BLOCK } + @R|Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(CONTRACTS)] fun <@R|Anno|[Types](LAZY_EXPRESSION) [ResolvedTo(CONTRACTS)] F : R|@R|Anno|((String(bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested bound ), prop#)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](LAZY_EXPRESSION) R|@R|Anno|((String(receiver type ), prop#)) kotlin/collections/Collection<@R|Anno|((String(nested receiver type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested receiver type ), prop#)) kotlin/String>>|.explicitType([ResolvedTo(CONTRACTS)] @R|Anno|[Types](LAZY_EXPRESSION) param: R|@R|Anno|((String(parameter type ), prop#)) kotlin/collections/ListIterator<@R|Anno|((String(nested parameter type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested parameter type ), prop#)) kotlin/String>>|): R|@R|Anno|((String(explicitType return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested nested return type ), prop#)) kotlin/Int>>| { + ^explicitType IntegerLiteral(1) + } } @@ -106,7 +108,9 @@ FILE: [ResolvedTo(IMPORTS)] delegateWithExplicitType.kt } public abstract [ResolvedTo(STATUS)] interface OriginalInterface : R|kotlin/Any| { - @R|Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(STATUS)] fun <@R|Anno|[Types](LAZY_EXPRESSION) [ResolvedTo(STATUS)] F : R|@R|Anno|((String(bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested bound ), prop#)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](LAZY_EXPRESSION) R|@R|Anno|((String(receiver type ), prop#)) kotlin/collections/Collection<@R|Anno|((String(nested receiver type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested receiver type ), prop#)) kotlin/String>>|.explicitType([ResolvedTo(STATUS)] @R|Anno|[Types](LAZY_EXPRESSION) param: R|@R|Anno|((String(parameter type ), prop#)) kotlin/collections/ListIterator<@R|Anno|((String(nested parameter type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested parameter type ), prop#)) kotlin/String>>|): R|@R|Anno|((String(explicitType return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested nested return type ), prop#)) kotlin/Int>>| { LAZY_BLOCK } + @R|Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] fun <@R|Anno|[Types](LAZY_EXPRESSION) [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] F : R|@R|Anno|((String(bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested bound ), prop#)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](LAZY_EXPRESSION) R|@R|Anno|((String(receiver type ), prop#)) kotlin/collections/Collection<@R|Anno|((String(nested receiver type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested receiver type ), prop#)) kotlin/String>>|.explicitType([ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] @R|Anno|[Types](LAZY_EXPRESSION) param: R|@R|Anno|((String(parameter type ), prop#)) kotlin/collections/ListIterator<@R|Anno|((String(nested parameter type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested parameter type ), prop#)) kotlin/String>>|): R|@R|Anno|((String(explicitType return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested nested return type ), prop#)) kotlin/Int>>| { + ^explicitType IntegerLiteral(1) + } } @@ -134,7 +138,9 @@ FILE: [ResolvedTo(IMPORTS)] delegateWithExplicitType.kt } public abstract [ResolvedTo(STATUS)] interface OriginalInterface : R|kotlin/Any| { - @R|Anno|[Types](position = (String(explicitType ), R|/prop|)) public open [ResolvedTo(STATUS)] fun <@R|Anno|[Types](position = (String(type param ), R|/prop|)) [ResolvedTo(STATUS)] F : R|@R|Anno|(position = (String(bound ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested bound ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested bound ), R|/prop|)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](position = (String(receiver annotation: ), R|/prop|)) R|@R|Anno|(position = (String(receiver type ), R|/prop|)) kotlin/collections/Collection<@R|Anno|(position = (String(nested receiver type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested receiver type ), R|/prop|)) kotlin/String>>|.explicitType([ResolvedTo(STATUS)] @R|Anno|[Types](position = (String(parameter annotation ), R|/prop|)) param: R|@R|Anno|(position = (String(parameter type ), R|/prop|)) kotlin/collections/ListIterator<@R|Anno|(position = (String(nested parameter type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested parameter type ), R|/prop|)) kotlin/String>>|): R|@R|Anno|(position = (String(explicitType return type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested return type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested nested return type ), R|/prop|)) kotlin/Int>>| { LAZY_BLOCK } + @R|Anno|[Types](position = (String(explicitType ), R|/prop|)) public open [ResolvedTo(ANNOTATION_ARGUMENTS)] fun <@R|Anno|[Types](position = (String(type param ), R|/prop|)) [ResolvedTo(ANNOTATION_ARGUMENTS)] F : R|@R|Anno|(position = (String(bound ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested bound ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested bound ), R|/prop|)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](position = (String(receiver annotation: ), R|/prop|)) R|@R|Anno|(position = (String(receiver type ), R|/prop|)) kotlin/collections/Collection<@R|Anno|(position = (String(nested receiver type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested receiver type ), R|/prop|)) kotlin/String>>|.explicitType([ResolvedTo(ANNOTATION_ARGUMENTS)] @R|Anno|[Types](position = (String(parameter annotation ), R|/prop|)) param: R|@R|Anno|(position = (String(parameter type ), R|/prop|)) kotlin/collections/ListIterator<@R|Anno|(position = (String(nested parameter type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested parameter type ), R|/prop|)) kotlin/String>>|): R|@R|Anno|(position = (String(explicitType return type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested return type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested nested return type ), R|/prop|)) kotlin/Int>>| { + ^explicitType IntegerLiteral(1) + } } @@ -162,7 +168,9 @@ FILE: [ResolvedTo(IMPORTS)] delegateWithExplicitType.kt } public abstract [ResolvedTo(STATUS)] interface OriginalInterface : R|kotlin/Any| { - @R|Anno|[Types](position = (String(explicitType ), R|/prop|)) public open [ResolvedTo(STATUS)] fun <@R|Anno|[Types](position = (String(type param ), R|/prop|)) [ResolvedTo(STATUS)] F : R|@R|Anno|(position = (String(bound ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested bound ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested bound ), R|/prop|)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](position = (String(receiver annotation: ), R|/prop|)) R|@R|Anno|(position = (String(receiver type ), R|/prop|)) kotlin/collections/Collection<@R|Anno|(position = (String(nested receiver type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested receiver type ), R|/prop|)) kotlin/String>>|.explicitType([ResolvedTo(STATUS)] @R|Anno|[Types](position = (String(parameter annotation ), R|/prop|)) param: R|@R|Anno|(position = (String(parameter type ), R|/prop|)) kotlin/collections/ListIterator<@R|Anno|(position = (String(nested parameter type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested parameter type ), R|/prop|)) kotlin/String>>|): R|@R|Anno|(position = (String(explicitType return type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested return type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested nested return type ), R|/prop|)) kotlin/Int>>| { LAZY_BLOCK } + @R|Anno|[Types](position = (String(explicitType ), R|/prop|)) public open [ResolvedTo(ANNOTATION_ARGUMENTS)] fun <@R|Anno|[Types](position = (String(type param ), R|/prop|)) [ResolvedTo(ANNOTATION_ARGUMENTS)] F : R|@R|Anno|(position = (String(bound ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested bound ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested bound ), R|/prop|)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](position = (String(receiver annotation: ), R|/prop|)) R|@R|Anno|(position = (String(receiver type ), R|/prop|)) kotlin/collections/Collection<@R|Anno|(position = (String(nested receiver type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested receiver type ), R|/prop|)) kotlin/String>>|.explicitType([ResolvedTo(ANNOTATION_ARGUMENTS)] @R|Anno|[Types](position = (String(parameter annotation ), R|/prop|)) param: R|@R|Anno|(position = (String(parameter type ), R|/prop|)) kotlin/collections/ListIterator<@R|Anno|(position = (String(nested parameter type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested parameter type ), R|/prop|)) kotlin/String>>|): R|@R|Anno|(position = (String(explicitType return type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested return type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested nested return type ), R|/prop|)) kotlin/Int>>| { + ^explicitType IntegerLiteral(1) + } } diff --git a/analysis/low-level-api-fir/testData/lazyResolveTypeAnnotations/delegate/delegateWithExplicitTypeScript.lazyResolve.txt b/analysis/low-level-api-fir/testData/lazyResolveTypeAnnotations/delegate/delegateWithExplicitTypeScript.lazyResolve.txt index f666bbb463e..03c194f768d 100644 --- a/analysis/low-level-api-fir/testData/lazyResolveTypeAnnotations/delegate/delegateWithExplicitTypeScript.lazyResolve.txt +++ b/analysis/low-level-api-fir/testData/lazyResolveTypeAnnotations/delegate/delegateWithExplicitTypeScript.lazyResolve.txt @@ -65,7 +65,7 @@ FILE: [ResolvedTo(IMPORTS)] delegateWithExplicitTypeScript.kts } public abstract [ResolvedTo(STATUS)] interface OriginalInterface : R|kotlin/Any| { - @R|Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(STATUS)] fun <@R|Anno|[Types](LAZY_EXPRESSION) [ResolvedTo(STATUS)] F : R|@R|Anno|((String(bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested bound ), prop#)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](LAZY_EXPRESSION) R|@R|Anno|((String(receiver type ), prop#)) kotlin/collections/Collection<@R|Anno|((String(nested receiver type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested receiver type ), prop#)) kotlin/String>>|.explicitType([ResolvedTo(STATUS)] @R|Anno|[Types](LAZY_EXPRESSION) param: R|@R|Anno|((String(parameter type ), prop#)) kotlin/collections/ListIterator<@R|Anno|((String(nested parameter type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested parameter type ), prop#)) kotlin/String>>|): R|@R|Anno|((String(explicitType return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested nested return type ), prop#)) kotlin/Int>>| { LAZY_BLOCK } + @R|Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(EXPECT_ACTUAL_MATCHING)] fun <@R|Anno|[Types](LAZY_EXPRESSION) [ResolvedTo(EXPECT_ACTUAL_MATCHING)] F : R|@R|Anno|((String(bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested bound ), prop#)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](LAZY_EXPRESSION) R|@R|Anno|((String(receiver type ), prop#)) kotlin/collections/Collection<@R|Anno|((String(nested receiver type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested receiver type ), prop#)) kotlin/String>>|.explicitType([ResolvedTo(EXPECT_ACTUAL_MATCHING)] @R|Anno|[Types](LAZY_EXPRESSION) param: R|@R|Anno|((String(parameter type ), prop#)) kotlin/collections/ListIterator<@R|Anno|((String(nested parameter type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested parameter type ), prop#)) kotlin/String>>|): R|@R|Anno|((String(explicitType return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested nested return type ), prop#)) kotlin/Int>>| { LAZY_BLOCK } } @@ -101,7 +101,9 @@ FILE: [ResolvedTo(IMPORTS)] delegateWithExplicitTypeScript.kts } public abstract [ResolvedTo(STATUS)] interface OriginalInterface : R|kotlin/Any| { - @R|Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(STATUS)] fun <@R|Anno|[Types](LAZY_EXPRESSION) [ResolvedTo(STATUS)] F : R|@R|Anno|((String(bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested bound ), prop#)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](LAZY_EXPRESSION) R|@R|Anno|((String(receiver type ), prop#)) kotlin/collections/Collection<@R|Anno|((String(nested receiver type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested receiver type ), prop#)) kotlin/String>>|.explicitType([ResolvedTo(STATUS)] @R|Anno|[Types](LAZY_EXPRESSION) param: R|@R|Anno|((String(parameter type ), prop#)) kotlin/collections/ListIterator<@R|Anno|((String(nested parameter type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested parameter type ), prop#)) kotlin/String>>|): R|@R|Anno|((String(explicitType return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested nested return type ), prop#)) kotlin/Int>>| { LAZY_BLOCK } + @R|Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(CONTRACTS)] fun <@R|Anno|[Types](LAZY_EXPRESSION) [ResolvedTo(CONTRACTS)] F : R|@R|Anno|((String(bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested bound ), prop#)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](LAZY_EXPRESSION) R|@R|Anno|((String(receiver type ), prop#)) kotlin/collections/Collection<@R|Anno|((String(nested receiver type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested receiver type ), prop#)) kotlin/String>>|.explicitType([ResolvedTo(CONTRACTS)] @R|Anno|[Types](LAZY_EXPRESSION) param: R|@R|Anno|((String(parameter type ), prop#)) kotlin/collections/ListIterator<@R|Anno|((String(nested parameter type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested parameter type ), prop#)) kotlin/String>>|): R|@R|Anno|((String(explicitType return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested nested return type ), prop#)) kotlin/Int>>| { + ^explicitType IntegerLiteral(1) + } } @@ -137,7 +139,9 @@ FILE: [ResolvedTo(IMPORTS)] delegateWithExplicitTypeScript.kts } public abstract [ResolvedTo(STATUS)] interface OriginalInterface : R|kotlin/Any| { - @R|Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(STATUS)] fun <@R|Anno|[Types](LAZY_EXPRESSION) [ResolvedTo(STATUS)] F : R|@R|Anno|((String(bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested bound ), prop#)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](LAZY_EXPRESSION) R|@R|Anno|((String(receiver type ), prop#)) kotlin/collections/Collection<@R|Anno|((String(nested receiver type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested receiver type ), prop#)) kotlin/String>>|.explicitType([ResolvedTo(STATUS)] @R|Anno|[Types](LAZY_EXPRESSION) param: R|@R|Anno|((String(parameter type ), prop#)) kotlin/collections/ListIterator<@R|Anno|((String(nested parameter type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested parameter type ), prop#)) kotlin/String>>|): R|@R|Anno|((String(explicitType return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested nested return type ), prop#)) kotlin/Int>>| { LAZY_BLOCK } + @R|Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] fun <@R|Anno|[Types](LAZY_EXPRESSION) [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] F : R|@R|Anno|((String(bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested bound ), prop#)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](LAZY_EXPRESSION) R|@R|Anno|((String(receiver type ), prop#)) kotlin/collections/Collection<@R|Anno|((String(nested receiver type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested receiver type ), prop#)) kotlin/String>>|.explicitType([ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] @R|Anno|[Types](LAZY_EXPRESSION) param: R|@R|Anno|((String(parameter type ), prop#)) kotlin/collections/ListIterator<@R|Anno|((String(nested parameter type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested parameter type ), prop#)) kotlin/String>>|): R|@R|Anno|((String(explicitType return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested nested return type ), prop#)) kotlin/Int>>| { + ^explicitType IntegerLiteral(1) + } } @@ -173,7 +177,9 @@ FILE: [ResolvedTo(IMPORTS)] delegateWithExplicitTypeScript.kts } public abstract [ResolvedTo(STATUS)] interface OriginalInterface : R|kotlin/Any| { - @R|Anno|[Types](position = (String(explicitType ), R|/prop|)) public open [ResolvedTo(STATUS)] fun <@R|Anno|[Types](position = (String(type param ), R|/prop|)) [ResolvedTo(STATUS)] F : R|@R|Anno|(position = (String(bound ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested bound ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested bound ), R|/prop|)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](position = (String(receiver annotation: ), R|/prop|)) R|@R|Anno|(position = (String(receiver type ), R|/prop|)) kotlin/collections/Collection<@R|Anno|(position = (String(nested receiver type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested receiver type ), R|/prop|)) kotlin/String>>|.explicitType([ResolvedTo(STATUS)] @R|Anno|[Types](position = (String(parameter annotation ), R|/prop|)) param: R|@R|Anno|(position = (String(parameter type ), R|/prop|)) kotlin/collections/ListIterator<@R|Anno|(position = (String(nested parameter type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested parameter type ), R|/prop|)) kotlin/String>>|): R|@R|Anno|(position = (String(explicitType return type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested return type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested nested return type ), R|/prop|)) kotlin/Int>>| { LAZY_BLOCK } + @R|Anno|[Types](position = (String(explicitType ), R|/prop|)) public open [ResolvedTo(ANNOTATION_ARGUMENTS)] fun <@R|Anno|[Types](position = (String(type param ), R|/prop|)) [ResolvedTo(ANNOTATION_ARGUMENTS)] F : R|@R|Anno|(position = (String(bound ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested bound ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested bound ), R|/prop|)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](position = (String(receiver annotation: ), R|/prop|)) R|@R|Anno|(position = (String(receiver type ), R|/prop|)) kotlin/collections/Collection<@R|Anno|(position = (String(nested receiver type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested receiver type ), R|/prop|)) kotlin/String>>|.explicitType([ResolvedTo(ANNOTATION_ARGUMENTS)] @R|Anno|[Types](position = (String(parameter annotation ), R|/prop|)) param: R|@R|Anno|(position = (String(parameter type ), R|/prop|)) kotlin/collections/ListIterator<@R|Anno|(position = (String(nested parameter type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested parameter type ), R|/prop|)) kotlin/String>>|): R|@R|Anno|(position = (String(explicitType return type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested return type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested nested return type ), R|/prop|)) kotlin/Int>>| { + ^explicitType IntegerLiteral(1) + } } @@ -209,7 +215,9 @@ FILE: [ResolvedTo(IMPORTS)] delegateWithExplicitTypeScript.kts } public abstract [ResolvedTo(STATUS)] interface OriginalInterface : R|kotlin/Any| { - @R|Anno|[Types](position = (String(explicitType ), R|/prop|)) public open [ResolvedTo(STATUS)] fun <@R|Anno|[Types](position = (String(type param ), R|/prop|)) [ResolvedTo(STATUS)] F : R|@R|Anno|(position = (String(bound ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested bound ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested bound ), R|/prop|)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](position = (String(receiver annotation: ), R|/prop|)) R|@R|Anno|(position = (String(receiver type ), R|/prop|)) kotlin/collections/Collection<@R|Anno|(position = (String(nested receiver type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested receiver type ), R|/prop|)) kotlin/String>>|.explicitType([ResolvedTo(STATUS)] @R|Anno|[Types](position = (String(parameter annotation ), R|/prop|)) param: R|@R|Anno|(position = (String(parameter type ), R|/prop|)) kotlin/collections/ListIterator<@R|Anno|(position = (String(nested parameter type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested parameter type ), R|/prop|)) kotlin/String>>|): R|@R|Anno|(position = (String(explicitType return type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested return type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested nested return type ), R|/prop|)) kotlin/Int>>| { LAZY_BLOCK } + @R|Anno|[Types](position = (String(explicitType ), R|/prop|)) public open [ResolvedTo(ANNOTATION_ARGUMENTS)] fun <@R|Anno|[Types](position = (String(type param ), R|/prop|)) [ResolvedTo(ANNOTATION_ARGUMENTS)] F : R|@R|Anno|(position = (String(bound ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested bound ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested bound ), R|/prop|)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](position = (String(receiver annotation: ), R|/prop|)) R|@R|Anno|(position = (String(receiver type ), R|/prop|)) kotlin/collections/Collection<@R|Anno|(position = (String(nested receiver type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested receiver type ), R|/prop|)) kotlin/String>>|.explicitType([ResolvedTo(ANNOTATION_ARGUMENTS)] @R|Anno|[Types](position = (String(parameter annotation ), R|/prop|)) param: R|@R|Anno|(position = (String(parameter type ), R|/prop|)) kotlin/collections/ListIterator<@R|Anno|(position = (String(nested parameter type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested parameter type ), R|/prop|)) kotlin/String>>|): R|@R|Anno|(position = (String(explicitType return type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested return type ), R|/prop|)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested nested return type ), R|/prop|)) kotlin/Int>>| { + ^explicitType IntegerLiteral(1) + } } @@ -248,3 +256,4 @@ FILE: [ResolvedTo(BODY_RESOLVE)] delegateWithExplicitTypeScript.kts } } + diff --git a/analysis/low-level-api-fir/testData/lazyResolveTypeAnnotations/delegate/delegateWithExplicitTypeUnavailable.lazyResolve.txt b/analysis/low-level-api-fir/testData/lazyResolveTypeAnnotations/delegate/delegateWithExplicitTypeUnavailable.lazyResolve.txt index 0665bd116d8..e499430fcec 100644 --- a/analysis/low-level-api-fir/testData/lazyResolveTypeAnnotations/delegate/delegateWithExplicitTypeUnavailable.lazyResolve.txt +++ b/analysis/low-level-api-fir/testData/lazyResolveTypeAnnotations/delegate/delegateWithExplicitTypeUnavailable.lazyResolve.txt @@ -56,7 +56,7 @@ FILE: [ResolvedTo(IMPORTS)] delegateWithExplicitTypeUnavailable.kt } public abstract [ResolvedTo(STATUS)] interface OriginalInterface : R|kotlin/Any| { - @R|Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(STATUS)] fun <@R|Anno|[Types](LAZY_EXPRESSION) [ResolvedTo(STATUS)] F : R|@R|Anno|((String(bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested bound ), prop#)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](LAZY_EXPRESSION) R|@R|Anno|((String(receiver type ), prop#)) kotlin/collections/Collection<@R|Anno|((String(nested receiver type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested receiver type ), prop#)) kotlin/String>>|.explicitType([ResolvedTo(STATUS)] @R|Anno|[Types](LAZY_EXPRESSION) param: R|@R|Anno|((String(parameter type ), prop#)) kotlin/collections/ListIterator<@R|Anno|((String(nested parameter type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested parameter type ), prop#)) kotlin/String>>|): R|@R|Anno|((String(explicitType return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested nested return type ), prop#)) kotlin/Int>>| { LAZY_BLOCK } + @R|Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(EXPECT_ACTUAL_MATCHING)] fun <@R|Anno|[Types](LAZY_EXPRESSION) [ResolvedTo(EXPECT_ACTUAL_MATCHING)] F : R|@R|Anno|((String(bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested bound ), prop#)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](LAZY_EXPRESSION) R|@R|Anno|((String(receiver type ), prop#)) kotlin/collections/Collection<@R|Anno|((String(nested receiver type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested receiver type ), prop#)) kotlin/String>>|.explicitType([ResolvedTo(EXPECT_ACTUAL_MATCHING)] @R|Anno|[Types](LAZY_EXPRESSION) param: R|@R|Anno|((String(parameter type ), prop#)) kotlin/collections/ListIterator<@R|Anno|((String(nested parameter type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested parameter type ), prop#)) kotlin/String>>|): R|@R|Anno|((String(explicitType return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested nested return type ), prop#)) kotlin/Int>>| { LAZY_BLOCK } public? final? companion [ResolvedTo(RAW_FIR)] object Companion : R|kotlin/Any| { private [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] constructor(): R|OriginalInterface.Companion| { @@ -92,15 +92,17 @@ FILE: [ResolvedTo(IMPORTS)] delegateWithExplicitTypeUnavailable.kt } public abstract [ResolvedTo(STATUS)] interface OriginalInterface : R|kotlin/Any| { - @R|Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(STATUS)] fun <@R|Anno|[Types](LAZY_EXPRESSION) [ResolvedTo(STATUS)] F : R|@R|Anno|((String(bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested bound ), prop#)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](LAZY_EXPRESSION) R|@R|Anno|((String(receiver type ), prop#)) kotlin/collections/Collection<@R|Anno|((String(nested receiver type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested receiver type ), prop#)) kotlin/String>>|.explicitType([ResolvedTo(STATUS)] @R|Anno|[Types](LAZY_EXPRESSION) param: R|@R|Anno|((String(parameter type ), prop#)) kotlin/collections/ListIterator<@R|Anno|((String(nested parameter type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested parameter type ), prop#)) kotlin/String>>|): R|@R|Anno|((String(explicitType return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested nested return type ), prop#)) kotlin/Int>>| { LAZY_BLOCK } + @R|Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(CONTRACTS)] fun <@R|Anno|[Types](LAZY_EXPRESSION) [ResolvedTo(CONTRACTS)] F : R|@R|Anno|((String(bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested bound ), prop#)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](LAZY_EXPRESSION) R|@R|Anno|((String(receiver type ), prop#)) kotlin/collections/Collection<@R|Anno|((String(nested receiver type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested receiver type ), prop#)) kotlin/String>>|.explicitType([ResolvedTo(CONTRACTS)] @R|Anno|[Types](LAZY_EXPRESSION) param: R|@R|Anno|((String(parameter type ), prop#)) kotlin/collections/ListIterator<@R|Anno|((String(nested parameter type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested parameter type ), prop#)) kotlin/String>>|): R|@R|Anno|((String(explicitType return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested nested return type ), prop#)) kotlin/Int>>| { + ^explicitType IntegerLiteral(1) + } - public? final? companion [ResolvedTo(RAW_FIR)] object Companion : R|kotlin/Any| { - private [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] constructor(): R|OriginalInterface.Companion| { + public final companion [ResolvedTo(STATUS)] object Companion : R|kotlin/Any| { + private [ResolvedTo(STATUS)] [ContainingClassKey=Companion] constructor(): R|OriginalInterface.Companion| { LAZY_super } - private final? const [ResolvedTo(RAW_FIR)] val prop: = LAZY_EXPRESSION - private [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] get(): + private final const [ResolvedTo(STATUS)] val prop: = LAZY_EXPRESSION + private [ResolvedTo(STATUS)] [ContainingClassKey=Companion] get(): } @@ -128,22 +130,24 @@ FILE: [ResolvedTo(IMPORTS)] delegateWithExplicitTypeUnavailable.kt } public abstract [ResolvedTo(STATUS)] interface OriginalInterface : R|kotlin/Any| { - @R|Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(STATUS)] fun <@R|Anno|[Types](LAZY_EXPRESSION) [ResolvedTo(STATUS)] F : R|@R|Anno|((String(bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested bound ), prop#)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](LAZY_EXPRESSION) R|@R|Anno|((String(receiver type ), prop#)) kotlin/collections/Collection<@R|Anno|((String(nested receiver type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested receiver type ), prop#)) kotlin/String>>|.explicitType([ResolvedTo(STATUS)] @R|Anno|[Types](LAZY_EXPRESSION) param: R|@R|Anno|((String(parameter type ), prop#)) kotlin/collections/ListIterator<@R|Anno|((String(nested parameter type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested parameter type ), prop#)) kotlin/String>>|): R|@R|Anno|((String(explicitType return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested nested return type ), prop#)) kotlin/Int>>| { LAZY_BLOCK } + @R|Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] fun <@R|Anno|[Types](LAZY_EXPRESSION) [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] F : R|@R|Anno|((String(bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested bound ), prop#)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](LAZY_EXPRESSION) R|@R|Anno|((String(receiver type ), prop#)) kotlin/collections/Collection<@R|Anno|((String(nested receiver type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested receiver type ), prop#)) kotlin/String>>|.explicitType([ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] @R|Anno|[Types](LAZY_EXPRESSION) param: R|@R|Anno|((String(parameter type ), prop#)) kotlin/collections/ListIterator<@R|Anno|((String(nested parameter type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested parameter type ), prop#)) kotlin/String>>|): R|@R|Anno|((String(explicitType return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested nested return type ), prop#)) kotlin/Int>>| { + ^explicitType IntegerLiteral(1) + } - public? final? companion [ResolvedTo(RAW_FIR)] object Companion : R|kotlin/Any| { - private [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] constructor(): R|OriginalInterface.Companion| { + public final companion [ResolvedTo(STATUS)] object Companion : R|kotlin/Any| { + private [ResolvedTo(STATUS)] [ContainingClassKey=Companion] constructor(): R|OriginalInterface.Companion| { LAZY_super } - private final? const [ResolvedTo(RAW_FIR)] val prop: = LAZY_EXPRESSION - private [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] get(): + private final const [ResolvedTo(STATUS)] val prop: = LAZY_EXPRESSION + private [ResolvedTo(STATUS)] [ContainingClassKey=Companion] get(): } } ANNOTATION_ARGUMENTS: -TARGET: @R|Anno|[Types](position = (String(explicitType ), #)) public open [ResolvedTo(ANNOTATION_ARGUMENTS)] [DelegatedWrapperDataKey=[wrapped=FirNamedFunctionSymbol /OriginalInterface.explicitType, containingClass=Derived, delegateField=FirFieldSymbol /Derived.$$delegate_0] fun <@R|Anno|[Types](position = (String(type param ), #)) [ResolvedTo(ANNOTATION_ARGUMENTS)] F : R|@R|Anno|(position = (String(bound ), #)) kotlin/collections/List<@R|Anno|(position = (String(nested bound ), #)) kotlin/collections/List<@R|Anno|(position = (String(nested nested bound ), #)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](position = (String(receiver annotation: ), #)) R|@R|Anno|(position = (String(receiver type ), #)) kotlin/collections/Collection<@R|Anno|(position = (String(nested receiver type ), #)) kotlin/collections/List<@R|Anno|(position = (String(nested nested receiver type ), #)) kotlin/String>>|.explicitType([ResolvedTo(ANNOTATION_ARGUMENTS)] [SubstitutedOverrideOriginalKey=/param] @R|Anno|[Types](position = (String(parameter annotation ), #)) param: R|@R|Anno|(position = (String(parameter type ), #)) kotlin/collections/ListIterator<@R|Anno|(position = (String(nested parameter type ), #)) kotlin/collections/List<@R|Anno|(position = (String(nested nested parameter type ), #)) kotlin/String>>|): R|@R|Anno|(position = (String(explicitType return type ), #)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested return type ), #)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested nested return type ), #)) kotlin/Int>>| +TARGET: @R|Anno|[Types](position = (String(explicitType ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) public open [ResolvedTo(ANNOTATION_ARGUMENTS)] [DelegatedWrapperDataKey=[wrapped=FirNamedFunctionSymbol /OriginalInterface.explicitType, containingClass=Derived, delegateField=FirFieldSymbol /Derived.$$delegate_0] fun <@R|Anno|[Types](position = (String(type param ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) [ResolvedTo(ANNOTATION_ARGUMENTS)] F : R|@R|Anno|(position = (String(bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](position = (String(receiver annotation: ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) R|@R|Anno|(position = (String(receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/Collection<@R|Anno|(position = (String(nested receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|.explicitType([ResolvedTo(ANNOTATION_ARGUMENTS)] [SubstitutedOverrideOriginalKey=/param] @R|Anno|[Types](position = (String(parameter annotation ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) param: R|@R|Anno|(position = (String(parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/ListIterator<@R|Anno|(position = (String(nested parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|): R|@R|Anno|(position = (String(explicitType return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested nested return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/Int>>| FILE: [ResolvedTo(IMPORTS)] delegateWithExplicitTypeUnavailable.kt @R|kotlin/annotation/Target|[Types](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.TYPE|, Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.FUNCTION|, Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.VALUE_PARAMETER|, Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.TYPE_PARAMETER|) public final [ResolvedTo(STATUS)] annotation class Anno : R|kotlin/Annotation| { @@ -164,22 +168,24 @@ FILE: [ResolvedTo(IMPORTS)] delegateWithExplicitTypeUnavailable.kt } public abstract [ResolvedTo(STATUS)] interface OriginalInterface : R|kotlin/Any| { - @R|Anno|[Types](position = (String(explicitType ), #)) public open [ResolvedTo(STATUS)] fun <@R|Anno|[Types](position = (String(type param ), #)) [ResolvedTo(STATUS)] F : R|@R|Anno|(position = (String(bound ), #)) kotlin/collections/List<@R|Anno|(position = (String(nested bound ), #)) kotlin/collections/List<@R|Anno|(position = (String(nested nested bound ), #)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](position = (String(receiver annotation: ), #)) R|@R|Anno|(position = (String(receiver type ), #)) kotlin/collections/Collection<@R|Anno|(position = (String(nested receiver type ), #)) kotlin/collections/List<@R|Anno|(position = (String(nested nested receiver type ), #)) kotlin/String>>|.explicitType([ResolvedTo(STATUS)] @R|Anno|[Types](position = (String(parameter annotation ), #)) param: R|@R|Anno|(position = (String(parameter type ), #)) kotlin/collections/ListIterator<@R|Anno|(position = (String(nested parameter type ), #)) kotlin/collections/List<@R|Anno|(position = (String(nested nested parameter type ), #)) kotlin/String>>|): R|@R|Anno|(position = (String(explicitType return type ), #)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested return type ), #)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested nested return type ), #)) kotlin/Int>>| { LAZY_BLOCK } + @R|Anno|[Types](position = (String(explicitType ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) public open [ResolvedTo(ANNOTATION_ARGUMENTS)] fun <@R|Anno|[Types](position = (String(type param ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) [ResolvedTo(ANNOTATION_ARGUMENTS)] F : R|@R|Anno|(position = (String(bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](position = (String(receiver annotation: ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) R|@R|Anno|(position = (String(receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/Collection<@R|Anno|(position = (String(nested receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|.explicitType([ResolvedTo(ANNOTATION_ARGUMENTS)] @R|Anno|[Types](position = (String(parameter annotation ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) param: R|@R|Anno|(position = (String(parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/ListIterator<@R|Anno|(position = (String(nested parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|): R|@R|Anno|(position = (String(explicitType return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested nested return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/Int>>| { + ^explicitType IntegerLiteral(1) + } - public? final? companion [ResolvedTo(RAW_FIR)] object Companion : R|kotlin/Any| { - private [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] constructor(): R|OriginalInterface.Companion| { + public final companion [ResolvedTo(STATUS)] object Companion : R|kotlin/Any| { + private [ResolvedTo(STATUS)] [ContainingClassKey=Companion] constructor(): R|OriginalInterface.Companion| { LAZY_super } - private final? const [ResolvedTo(RAW_FIR)] val prop: = LAZY_EXPRESSION - private [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] get(): + private final const [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val prop: R|kotlin/Int| = Int(0) + private [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=Companion] get(): R|kotlin/Int| } } BODY_RESOLVE: -TARGET: @R|Anno|[Types](position = (String(explicitType ), #)) public open [ResolvedTo(BODY_RESOLVE)] [DelegatedWrapperDataKey=[wrapped=FirNamedFunctionSymbol /OriginalInterface.explicitType, containingClass=Derived, delegateField=FirFieldSymbol /Derived.$$delegate_0] fun <@R|Anno|[Types](position = (String(type param ), #)) [ResolvedTo(BODY_RESOLVE)] F : R|@R|Anno|(position = (String(bound ), #)) kotlin/collections/List<@R|Anno|(position = (String(nested bound ), #)) kotlin/collections/List<@R|Anno|(position = (String(nested nested bound ), #)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](position = (String(receiver annotation: ), #)) R|@R|Anno|(position = (String(receiver type ), #)) kotlin/collections/Collection<@R|Anno|(position = (String(nested receiver type ), #)) kotlin/collections/List<@R|Anno|(position = (String(nested nested receiver type ), #)) kotlin/String>>|.explicitType([ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/param] @R|Anno|[Types](position = (String(parameter annotation ), #)) param: R|@R|Anno|(position = (String(parameter type ), #)) kotlin/collections/ListIterator<@R|Anno|(position = (String(nested parameter type ), #)) kotlin/collections/List<@R|Anno|(position = (String(nested nested parameter type ), #)) kotlin/String>>|): R|@R|Anno|(position = (String(explicitType return type ), #)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested return type ), #)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested nested return type ), #)) kotlin/Int>>| +TARGET: @R|Anno|[Types](position = (String(explicitType ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) public open [ResolvedTo(BODY_RESOLVE)] [DelegatedWrapperDataKey=[wrapped=FirNamedFunctionSymbol /OriginalInterface.explicitType, containingClass=Derived, delegateField=FirFieldSymbol /Derived.$$delegate_0] fun <@R|Anno|[Types](position = (String(type param ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) [ResolvedTo(BODY_RESOLVE)] F : R|@R|Anno|(position = (String(bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](position = (String(receiver annotation: ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) R|@R|Anno|(position = (String(receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/Collection<@R|Anno|(position = (String(nested receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|.explicitType([ResolvedTo(BODY_RESOLVE)] [SubstitutedOverrideOriginalKey=/param] @R|Anno|[Types](position = (String(parameter annotation ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) param: R|@R|Anno|(position = (String(parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/ListIterator<@R|Anno|(position = (String(nested parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|): R|@R|Anno|(position = (String(explicitType return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested nested return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/Int>>| FILE: [ResolvedTo(IMPORTS)] delegateWithExplicitTypeUnavailable.kt @R|kotlin/annotation/Target|[Types](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.TYPE|, Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.FUNCTION|, Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.VALUE_PARAMETER|, Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.TYPE_PARAMETER|) public final [ResolvedTo(STATUS)] annotation class Anno : R|kotlin/Annotation| { @@ -200,15 +206,17 @@ FILE: [ResolvedTo(IMPORTS)] delegateWithExplicitTypeUnavailable.kt } public abstract [ResolvedTo(STATUS)] interface OriginalInterface : R|kotlin/Any| { - @R|Anno|[Types](position = (String(explicitType ), #)) public open [ResolvedTo(STATUS)] fun <@R|Anno|[Types](position = (String(type param ), #)) [ResolvedTo(STATUS)] F : R|@R|Anno|(position = (String(bound ), #)) kotlin/collections/List<@R|Anno|(position = (String(nested bound ), #)) kotlin/collections/List<@R|Anno|(position = (String(nested nested bound ), #)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](position = (String(receiver annotation: ), #)) R|@R|Anno|(position = (String(receiver type ), #)) kotlin/collections/Collection<@R|Anno|(position = (String(nested receiver type ), #)) kotlin/collections/List<@R|Anno|(position = (String(nested nested receiver type ), #)) kotlin/String>>|.explicitType([ResolvedTo(STATUS)] @R|Anno|[Types](position = (String(parameter annotation ), #)) param: R|@R|Anno|(position = (String(parameter type ), #)) kotlin/collections/ListIterator<@R|Anno|(position = (String(nested parameter type ), #)) kotlin/collections/List<@R|Anno|(position = (String(nested nested parameter type ), #)) kotlin/String>>|): R|@R|Anno|(position = (String(explicitType return type ), #)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested return type ), #)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested nested return type ), #)) kotlin/Int>>| { LAZY_BLOCK } + @R|Anno|[Types](position = (String(explicitType ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) public open [ResolvedTo(ANNOTATION_ARGUMENTS)] fun <@R|Anno|[Types](position = (String(type param ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) [ResolvedTo(ANNOTATION_ARGUMENTS)] F : R|@R|Anno|(position = (String(bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](position = (String(receiver annotation: ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) R|@R|Anno|(position = (String(receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/Collection<@R|Anno|(position = (String(nested receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|.explicitType([ResolvedTo(ANNOTATION_ARGUMENTS)] @R|Anno|[Types](position = (String(parameter annotation ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) param: R|@R|Anno|(position = (String(parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/ListIterator<@R|Anno|(position = (String(nested parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|): R|@R|Anno|(position = (String(explicitType return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested nested return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/Int>>| { + ^explicitType IntegerLiteral(1) + } - public? final? companion [ResolvedTo(RAW_FIR)] object Companion : R|kotlin/Any| { - private [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] constructor(): R|OriginalInterface.Companion| { + public final companion [ResolvedTo(STATUS)] object Companion : R|kotlin/Any| { + private [ResolvedTo(STATUS)] [ContainingClassKey=Companion] constructor(): R|OriginalInterface.Companion| { LAZY_super } - private final? const [ResolvedTo(RAW_FIR)] val prop: = LAZY_EXPRESSION - private [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] get(): + private final const [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val prop: R|kotlin/Int| = Int(0) + private [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=Companion] get(): R|kotlin/Int| } diff --git a/analysis/low-level-api-fir/testData/lazyResolveTypeAnnotations/delegate/delegateWithExplicitTypeUnavailableScript.lazyResolve.txt b/analysis/low-level-api-fir/testData/lazyResolveTypeAnnotations/delegate/delegateWithExplicitTypeUnavailableScript.lazyResolve.txt index 097a09a85fa..d109eaefd32 100644 --- a/analysis/low-level-api-fir/testData/lazyResolveTypeAnnotations/delegate/delegateWithExplicitTypeUnavailableScript.lazyResolve.txt +++ b/analysis/low-level-api-fir/testData/lazyResolveTypeAnnotations/delegate/delegateWithExplicitTypeUnavailableScript.lazyResolve.txt @@ -69,7 +69,7 @@ FILE: [ResolvedTo(IMPORTS)] delegateWithExplicitTypeUnavailableScript.kts } public abstract [ResolvedTo(STATUS)] interface OriginalInterface : R|kotlin/Any| { - @R|Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(STATUS)] fun <@R|Anno|[Types](LAZY_EXPRESSION) [ResolvedTo(STATUS)] F : R|@R|Anno|((String(bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested bound ), prop#)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](LAZY_EXPRESSION) R|@R|Anno|((String(receiver type ), prop#)) kotlin/collections/Collection<@R|Anno|((String(nested receiver type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested receiver type ), prop#)) kotlin/String>>|.explicitType([ResolvedTo(STATUS)] @R|Anno|[Types](LAZY_EXPRESSION) param: R|@R|Anno|((String(parameter type ), prop#)) kotlin/collections/ListIterator<@R|Anno|((String(nested parameter type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested parameter type ), prop#)) kotlin/String>>|): R|@R|Anno|((String(explicitType return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested nested return type ), prop#)) kotlin/Int>>| { LAZY_BLOCK } + @R|Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(EXPECT_ACTUAL_MATCHING)] fun <@R|Anno|[Types](LAZY_EXPRESSION) [ResolvedTo(EXPECT_ACTUAL_MATCHING)] F : R|@R|Anno|((String(bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested bound ), prop#)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](LAZY_EXPRESSION) R|@R|Anno|((String(receiver type ), prop#)) kotlin/collections/Collection<@R|Anno|((String(nested receiver type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested receiver type ), prop#)) kotlin/String>>|.explicitType([ResolvedTo(EXPECT_ACTUAL_MATCHING)] @R|Anno|[Types](LAZY_EXPRESSION) param: R|@R|Anno|((String(parameter type ), prop#)) kotlin/collections/ListIterator<@R|Anno|((String(nested parameter type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested parameter type ), prop#)) kotlin/String>>|): R|@R|Anno|((String(explicitType return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested nested return type ), prop#)) kotlin/Int>>| { LAZY_BLOCK } public? final? companion [ResolvedTo(RAW_FIR)] object Companion : R|kotlin/Any| { private [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] constructor(): R|OriginalInterface.Companion| { @@ -112,15 +112,17 @@ FILE: [ResolvedTo(IMPORTS)] delegateWithExplicitTypeUnavailableScript.kts } public abstract [ResolvedTo(STATUS)] interface OriginalInterface : R|kotlin/Any| { - @R|Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(STATUS)] fun <@R|Anno|[Types](LAZY_EXPRESSION) [ResolvedTo(STATUS)] F : R|@R|Anno|((String(bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested bound ), prop#)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](LAZY_EXPRESSION) R|@R|Anno|((String(receiver type ), prop#)) kotlin/collections/Collection<@R|Anno|((String(nested receiver type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested receiver type ), prop#)) kotlin/String>>|.explicitType([ResolvedTo(STATUS)] @R|Anno|[Types](LAZY_EXPRESSION) param: R|@R|Anno|((String(parameter type ), prop#)) kotlin/collections/ListIterator<@R|Anno|((String(nested parameter type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested parameter type ), prop#)) kotlin/String>>|): R|@R|Anno|((String(explicitType return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested nested return type ), prop#)) kotlin/Int>>| { LAZY_BLOCK } + @R|Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(CONTRACTS)] fun <@R|Anno|[Types](LAZY_EXPRESSION) [ResolvedTo(CONTRACTS)] F : R|@R|Anno|((String(bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested bound ), prop#)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](LAZY_EXPRESSION) R|@R|Anno|((String(receiver type ), prop#)) kotlin/collections/Collection<@R|Anno|((String(nested receiver type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested receiver type ), prop#)) kotlin/String>>|.explicitType([ResolvedTo(CONTRACTS)] @R|Anno|[Types](LAZY_EXPRESSION) param: R|@R|Anno|((String(parameter type ), prop#)) kotlin/collections/ListIterator<@R|Anno|((String(nested parameter type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested parameter type ), prop#)) kotlin/String>>|): R|@R|Anno|((String(explicitType return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested nested return type ), prop#)) kotlin/Int>>| { + ^explicitType IntegerLiteral(1) + } - public? final? companion [ResolvedTo(RAW_FIR)] object Companion : R|kotlin/Any| { - private [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] constructor(): R|OriginalInterface.Companion| { + public final companion [ResolvedTo(STATUS)] object Companion : R|kotlin/Any| { + private [ResolvedTo(STATUS)] [ContainingClassKey=Companion] constructor(): R|OriginalInterface.Companion| { LAZY_super } - private final? const [ResolvedTo(RAW_FIR)] val prop: = LAZY_EXPRESSION - private [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] get(): + private final const [ResolvedTo(STATUS)] val prop: = LAZY_EXPRESSION + private [ResolvedTo(STATUS)] [ContainingClassKey=Companion] get(): } @@ -155,15 +157,17 @@ FILE: [ResolvedTo(IMPORTS)] delegateWithExplicitTypeUnavailableScript.kts } public abstract [ResolvedTo(STATUS)] interface OriginalInterface : R|kotlin/Any| { - @R|Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(STATUS)] fun <@R|Anno|[Types](LAZY_EXPRESSION) [ResolvedTo(STATUS)] F : R|@R|Anno|((String(bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested bound ), prop#)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](LAZY_EXPRESSION) R|@R|Anno|((String(receiver type ), prop#)) kotlin/collections/Collection<@R|Anno|((String(nested receiver type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested receiver type ), prop#)) kotlin/String>>|.explicitType([ResolvedTo(STATUS)] @R|Anno|[Types](LAZY_EXPRESSION) param: R|@R|Anno|((String(parameter type ), prop#)) kotlin/collections/ListIterator<@R|Anno|((String(nested parameter type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested parameter type ), prop#)) kotlin/String>>|): R|@R|Anno|((String(explicitType return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested nested return type ), prop#)) kotlin/Int>>| { LAZY_BLOCK } + @R|Anno|[Types](LAZY_EXPRESSION) public open [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] fun <@R|Anno|[Types](LAZY_EXPRESSION) [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] F : R|@R|Anno|((String(bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested bound ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested bound ), prop#)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](LAZY_EXPRESSION) R|@R|Anno|((String(receiver type ), prop#)) kotlin/collections/Collection<@R|Anno|((String(nested receiver type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested receiver type ), prop#)) kotlin/String>>|.explicitType([ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] @R|Anno|[Types](LAZY_EXPRESSION) param: R|@R|Anno|((String(parameter type ), prop#)) kotlin/collections/ListIterator<@R|Anno|((String(nested parameter type ), prop#)) kotlin/collections/List<@R|Anno|((String(nested nested parameter type ), prop#)) kotlin/String>>|): R|@R|Anno|((String(explicitType return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested return type ), prop#)) kotlin/collections/List<@R|Anno|((String(explicitType nested nested return type ), prop#)) kotlin/Int>>| { + ^explicitType IntegerLiteral(1) + } - public? final? companion [ResolvedTo(RAW_FIR)] object Companion : R|kotlin/Any| { - private [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] constructor(): R|OriginalInterface.Companion| { + public final companion [ResolvedTo(STATUS)] object Companion : R|kotlin/Any| { + private [ResolvedTo(STATUS)] [ContainingClassKey=Companion] constructor(): R|OriginalInterface.Companion| { LAZY_super } - private final? const [ResolvedTo(RAW_FIR)] val prop: = LAZY_EXPRESSION - private [ResolvedTo(RAW_FIR)] [ContainingClassKey=Companion] get(): + private final const [ResolvedTo(STATUS)] val prop: = LAZY_EXPRESSION + private [ResolvedTo(STATUS)] [ContainingClassKey=Companion] get(): } @@ -171,7 +175,7 @@ FILE: [ResolvedTo(IMPORTS)] delegateWithExplicitTypeUnavailableScript.kts ANNOTATION_ARGUMENTS: -TARGET: @R|Anno|[Types](position = (String(explicitType ), #)) public open [ResolvedTo(ANNOTATION_ARGUMENTS)] [DelegatedWrapperDataKey=[wrapped=FirNamedFunctionSymbol /OriginalInterface.explicitType, containingClass=Derived, delegateField=FirFieldSymbol /Derived.$$delegate_0] fun <@R|Anno|[Types](position = (String(type param ), #)) [ResolvedTo(ANNOTATION_ARGUMENTS)] F : R|@R|Anno|(position = (String(bound ), #)) kotlin/collections/List<@R|Anno|(position = (String(nested bound ), #)) kotlin/collections/List<@R|Anno|(position = (String(nested nested bound ), #)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](position = (String(receiver annotation: ), #)) R|@R|Anno|(position = (String(receiver type ), #)) kotlin/collections/Collection<@R|Anno|(position = (String(nested receiver type ), #)) kotlin/collections/List<@R|Anno|(position = (String(nested nested receiver type ), #)) kotlin/String>>|.explicitType([ResolvedTo(ANNOTATION_ARGUMENTS)] [SubstitutedOverrideOriginalKey=/param] @R|Anno|[Types](position = (String(parameter annotation ), #)) param: R|@R|Anno|(position = (String(parameter type ), #)) kotlin/collections/ListIterator<@R|Anno|(position = (String(nested parameter type ), #)) kotlin/collections/List<@R|Anno|(position = (String(nested nested parameter type ), #)) kotlin/String>>|): R|@R|Anno|(position = (String(explicitType return type ), #)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested return type ), #)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested nested return type ), #)) kotlin/Int>>| +TARGET: @R|Anno|[Types](position = (String(explicitType ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) public open [ResolvedTo(ANNOTATION_ARGUMENTS)] [DelegatedWrapperDataKey=[wrapped=FirNamedFunctionSymbol /OriginalInterface.explicitType, containingClass=Derived, delegateField=FirFieldSymbol /Derived.$$delegate_0] fun <@R|Anno|[Types](position = (String(type param ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) [ResolvedTo(ANNOTATION_ARGUMENTS)] F : R|@R|Anno|(position = (String(bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested bound ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|> @RECEIVER:R|Anno|[Types](position = (String(receiver annotation: ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) R|@R|Anno|(position = (String(receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/Collection<@R|Anno|(position = (String(nested receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested receiver type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|.explicitType([ResolvedTo(ANNOTATION_ARGUMENTS)] [SubstitutedOverrideOriginalKey=/param] @R|Anno|[Types](position = (String(parameter annotation ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) param: R|@R|Anno|(position = (String(parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/ListIterator<@R|Anno|(position = (String(nested parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(nested nested parameter type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/String>>|): R|@R|Anno|(position = (String(explicitType return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/collections/List<@R|Anno|(position = (String(explicitType nested nested return type ), this@R|/OriginalInterface.Companion|.R|/OriginalInterface.Companion.prop|)) kotlin/Int>>| FILE: [ResolvedTo(IMPORTS)] delegateWithExplicitTypeUnavailableScript.kts context(