diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/annotationClassWithJavaTarget.kt b/analysis/low-level-api-fir/testdata/lazyResolve/annotationClassWithJavaTarget.kt index e1880eea140..c4a6db08fae 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/annotationClassWithJavaTarget.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/annotationClassWithJavaTarget.kt @@ -1,4 +1,4 @@ import java.lang.annotation.ElementType @java.lang.annotation.Target(ElementType.TYPE_USE) -annotation class ResolveMe \ No newline at end of file +annotation class ResolveMe \ No newline at end of file diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/annotationFromImplicitJavaType.kt b/analysis/low-level-api-fir/testdata/lazyResolve/annotationFromImplicitJavaType.kt index f3ee9c252b3..1ea17f598dd 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/annotationFromImplicitJavaType.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/annotationFromImplicitJavaType.kt @@ -1,7 +1,7 @@ // SKIP_WHEN_OUT_OF_CONTENT_ROOT // DISABLE_SEALED_INHERITOR_CALCULATOR // FILE: main.kt -fun resolveMe(i: JavaInterface) = i.id +fun resolveMe(i: JavaInterface) = i.id // FILE: JavaClass.java public interface JavaInterface { diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/annotationFromImplicitJavaTypeWithJavaAnnotation.kt b/analysis/low-level-api-fir/testdata/lazyResolve/annotationFromImplicitJavaTypeWithJavaAnnotation.kt index 47022576829..dfdcfdf7b4e 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/annotationFromImplicitJavaTypeWithJavaAnnotation.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/annotationFromImplicitJavaTypeWithJavaAnnotation.kt @@ -1,7 +1,7 @@ // SKIP_WHEN_OUT_OF_CONTENT_ROOT // DISABLE_SEALED_INHERITOR_CALCULATOR // FILE: main.kt -fun resolveMe(i: JavaInterface) = i.id +fun resolveMe(i: JavaInterface) = i.id // FILE: JavaClass.java public interface JavaInterface { diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/annotationParameters.kt b/analysis/low-level-api-fir/testdata/lazyResolve/annotationParameters.kt index 7b1eccc1358..12acbdc2d9c 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/annotationParameters.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/annotationParameters.kt @@ -6,7 +6,7 @@ annotation class Anno(val args: A.X) class B { @Anno(X.A) - fun resolveMe() { + fun resolveMe() { } @Anno(X.A) diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/annotationParameters.txt b/analysis/low-level-api-fir/testdata/lazyResolve/annotationParameters.txt index a727dc27538..56e583bd6d5 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/annotationParameters.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/annotationParameters.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] annotationParameters.kt [ResolvedTo(RAW_FIR)] annotations container diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/annotationWithTypeArgument.kt b/analysis/low-level-api-fir/testdata/lazyResolve/annotationWithTypeArgument.kt index 42e4079011d..84ef1f93265 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/annotationWithTypeArgument.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/annotationWithTypeArgument.kt @@ -3,6 +3,6 @@ package one annotation class Anno(val value: KClass) @Anno(Int::class) -fun resolveMe() { +fun resolveMe() { } \ No newline at end of file diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/annotationWithTypeArgument.txt b/analysis/low-level-api-fir/testdata/lazyResolve/annotationWithTypeArgument.txt index d8254e17f9d..570acf23112 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/annotationWithTypeArgument.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/annotationWithTypeArgument.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] annotationWithTypeArgument.kt [ResolvedTo(RAW_FIR)] annotations container diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/annotations.kt b/analysis/low-level-api-fir/testdata/lazyResolve/annotations.kt index c7bccca8a31..579787f9aba 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/annotations.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/annotations.kt @@ -1,6 +1,6 @@ @file:Suppress("1") @Suppress("2") -fun resolveMe() { +fun resolveMe() { } \ No newline at end of file diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/annotations.txt b/analysis/low-level-api-fir/testdata/lazyResolve/annotations.txt index a89c3da7ab0..64c71a4db99 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/annotations.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/annotations.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] annotations.kt @FILE:Suppress[Unresolved](LAZY_EXPRESSION) diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/classMembers.kt b/analysis/low-level-api-fir/testdata/lazyResolve/classMembers.kt index 236a6fe7b31..bbbf877a304 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/classMembers.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/classMembers.kt @@ -1,5 +1,5 @@ class A { - fun resolveMe() { + fun resolveMe() { receive(functionWithLazyBody()) } diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/classMembers.txt b/analysis/low-level-api-fir/testdata/lazyResolve/classMembers.txt index 5038740a898..9daeee388cf 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/classMembers.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/classMembers.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] classMembers.kt [ResolvedTo(RAW_FIR)] annotations container diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/classes/annotationWithTarget.kt b/analysis/low-level-api-fir/testdata/lazyResolve/classes/annotationWithTarget.kt index bdbb5e01f2b..f28219e8470 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/classes/annotationWithTarget.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/classes/annotationWithTarget.kt @@ -1,4 +1,4 @@ @Target(AnnotationTarget.CLASS) @Anno("string") -annotation class ResolveMe(val value: Int) +annotation class ResolveMe(val value: Int) annotation class Anno(val s: String) \ No newline at end of file diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/classes/annotationWithTarget.txt b/analysis/low-level-api-fir/testdata/lazyResolve/classes/annotationWithTarget.txt index 5ba3c1e9ab0..f6f64f6ae55 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/classes/annotationWithTarget.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/classes/annotationWithTarget.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] annotationWithTarget.kt [ResolvedTo(RAW_FIR)] annotations container diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/classes/classWithTypeParameters.kt b/analysis/low-level-api-fir/testdata/lazyResolve/classes/classWithTypeParameters.kt index 326d9584703..b8283b0b7ce 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/classes/classWithTypeParameters.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/classes/classWithTypeParameters.kt @@ -1 +1 @@ -class ResolveMe() \ No newline at end of file +class ResolveMe() \ No newline at end of file diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/classes/classWithTypeParameters.txt b/analysis/low-level-api-fir/testdata/lazyResolve/classes/classWithTypeParameters.txt index 19f926fa081..90777915714 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/classes/classWithTypeParameters.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/classes/classWithTypeParameters.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] classWithTypeParameters.kt [ResolvedTo(RAW_FIR)] annotations container diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/classes/functionInValueClass.kt b/analysis/low-level-api-fir/testdata/lazyResolve/classes/functionInValueClass.kt index bb1cb97fffd..a5661b3a7b5 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/classes/functionInValueClass.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/classes/functionInValueClass.kt @@ -2,5 +2,5 @@ @JvmInline value class Value(val value: Int) { - fun resolveMe() {} + fun resolveMe() {} } diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/classes/functionInValueClass.txt b/analysis/low-level-api-fir/testdata/lazyResolve/classes/functionInValueClass.txt index 7234c88bf3f..30001522727 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/classes/functionInValueClass.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/classes/functionInValueClass.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] functionInValueClass.kt [ResolvedTo(RAW_FIR)] annotations container diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/classes/nestedClassWithPropertiesOverrides.kt b/analysis/low-level-api-fir/testdata/lazyResolve/classes/nestedClassWithPropertiesOverrides.kt index e44d4a3339b..ad613abe68f 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/classes/nestedClassWithPropertiesOverrides.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/classes/nestedClassWithPropertiesOverrides.kt @@ -2,7 +2,7 @@ interface OV { val originalExpressions: A - class ResolveMe: OV { + class ResolveMe: OV { override val originalExpressions: A } diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/classes/nestedClassWithPropertiesOverrides.txt b/analysis/low-level-api-fir/testdata/lazyResolve/classes/nestedClassWithPropertiesOverrides.txt index b4372dd6c63..ecefc224872 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/classes/nestedClassWithPropertiesOverrides.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/classes/nestedClassWithPropertiesOverrides.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] nestedClassWithPropertiesOverrides.kt [ResolvedTo(RAW_FIR)] annotations container diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/delegates.kt b/analysis/low-level-api-fir/testdata/lazyResolve/delegates.kt index b6265541f01..9c9b56fc815 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/delegates.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/delegates.kt @@ -3,7 +3,7 @@ import kotlin.properties.ReadWriteProperty import kotlin.reflect.KProperty -fun resolveMe() { +fun resolveMe() { receive(valueWithExplicitType) receive(valueWithImplicitType) diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/delegates.txt b/analysis/low-level-api-fir/testdata/lazyResolve/delegates.txt index 722ef810be4..9f4e79c1f23 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/delegates.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/delegates.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] delegates.kt [ResolvedTo(RAW_FIR)] annotations container diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/enumEntry.kt b/analysis/low-level-api-fir/testdata/lazyResolve/enumEntry.kt index 06c20212651..6d048279a2a 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/enumEntry.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/enumEntry.kt @@ -2,5 +2,5 @@ annotation class Anno enum class Foo { @Anno - ResolveMe + ResolveMe } \ No newline at end of file diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/enumEntry.txt b/analysis/low-level-api-fir/testdata/lazyResolve/enumEntry.txt index 0d36b3698f4..a8089ff2204 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/enumEntry.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/enumEntry.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] enumEntry.kt [ResolvedTo(RAW_FIR)] annotations container diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/errors/anonymousObjectInInvalidPosition.kt b/analysis/low-level-api-fir/testdata/lazyResolve/errors/anonymousObjectInInvalidPosition.kt index dc8c64077c7..99baf648ed7 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/errors/anonymousObjectInInvalidPosition.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/errors/anonymousObjectInInvalidPosition.kt @@ -1,4 +1,4 @@ -private val resolveMe: A = null = object : A { +private val resolveMe: A = null = object : A { override fun x() {} } diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/errors/anonymousObjectInInvalidPosition.txt b/analysis/low-level-api-fir/testdata/lazyResolve/errors/anonymousObjectInInvalidPosition.txt index 986ffa75c47..216339753bf 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/errors/anonymousObjectInInvalidPosition.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/errors/anonymousObjectInInvalidPosition.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] anonymousObjectInInvalidPosition.kt [ResolvedTo(RAW_FIR)] annotations container diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/functionWithParameter.kt b/analysis/low-level-api-fir/testdata/lazyResolve/functionWithParameter.kt index 969eb0f5ea9..1276da42c78 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/functionWithParameter.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/functionWithParameter.kt @@ -1,3 +1,3 @@ interface I -fun resolveMe(param: I) = Unit \ No newline at end of file +fun resolveMe(param: I) = Unit \ No newline at end of file diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/functionWithParameter.txt b/analysis/low-level-api-fir/testdata/lazyResolve/functionWithParameter.txt index dc821e20bae..97fe0684568 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/functionWithParameter.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/functionWithParameter.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] functionWithParameter.kt [ResolvedTo(RAW_FIR)] annotations container diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionCallWithGenericResult.kt b/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionCallWithGenericResult.kt index 8f39a6f220d..18e06e8c331 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionCallWithGenericResult.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionCallWithGenericResult.kt @@ -4,6 +4,6 @@ fun bar(): Foo? { return null } -fun resolveMe() { +fun resolveMe() { val x = bar() } diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionCallWithGenericResult.txt b/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionCallWithGenericResult.txt index d0194dcda38..89100285758 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionCallWithGenericResult.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionCallWithGenericResult.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] functionCallWithGenericResult.kt [ResolvedTo(RAW_FIR)] annotations container diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionParameter.kt b/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionParameter.kt new file mode 100644 index 00000000000..0943e08863e --- /dev/null +++ b/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionParameter.kt @@ -0,0 +1 @@ +fun foo(param: Int) = "boo" \ No newline at end of file diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionParameter.txt b/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionParameter.txt new file mode 100644 index 00000000000..3a2af4290fe --- /dev/null +++ b/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionParameter.txt @@ -0,0 +1,97 @@ +RAW_FIR: +FILE: [ResolvedTo(IMPORTS)] functionParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(BODY_RESOLVE)] fun foo([ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int|): R|kotlin/String| { + ^foo String(boo) + } + +IMPORTS: +FILE: [ResolvedTo(IMPORTS)] functionParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(BODY_RESOLVE)] fun foo([ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int|): R|kotlin/String| { + ^foo String(boo) + } + +COMPILER_REQUIRED_ANNOTATIONS: +FILE: [ResolvedTo(IMPORTS)] functionParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(BODY_RESOLVE)] fun foo([ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int|): R|kotlin/String| { + ^foo String(boo) + } + +COMPANION_GENERATION: +FILE: [ResolvedTo(IMPORTS)] functionParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(BODY_RESOLVE)] fun foo([ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int|): R|kotlin/String| { + ^foo String(boo) + } + +SUPER_TYPES: +FILE: [ResolvedTo(IMPORTS)] functionParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(BODY_RESOLVE)] fun foo([ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int|): R|kotlin/String| { + ^foo String(boo) + } + +TYPES: +FILE: [ResolvedTo(IMPORTS)] functionParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(BODY_RESOLVE)] fun foo([ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int|): R|kotlin/String| { + ^foo String(boo) + } + +STATUS: +FILE: [ResolvedTo(IMPORTS)] functionParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(BODY_RESOLVE)] fun foo([ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int|): R|kotlin/String| { + ^foo String(boo) + } + +EXPECT_ACTUAL_MATCHING: +FILE: [ResolvedTo(IMPORTS)] functionParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(BODY_RESOLVE)] fun foo([ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int|): R|kotlin/String| { + ^foo String(boo) + } + +ARGUMENTS_OF_ANNOTATIONS: +FILE: [ResolvedTo(IMPORTS)] functionParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(BODY_RESOLVE)] fun foo([ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int|): R|kotlin/String| { + ^foo String(boo) + } + +CONTRACTS: +FILE: [ResolvedTo(IMPORTS)] functionParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(BODY_RESOLVE)] fun foo([ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int|): R|kotlin/String| { + ^foo String(boo) + } + +IMPLICIT_TYPES_BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] functionParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(BODY_RESOLVE)] fun foo([ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int|): R|kotlin/String| { + ^foo String(boo) + } + +ANNOTATIONS_ARGUMENTS_MAPPING: +FILE: [ResolvedTo(IMPORTS)] functionParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(BODY_RESOLVE)] fun foo([ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int|): R|kotlin/String| { + ^foo String(boo) + } + +BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] functionParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(BODY_RESOLVE)] fun foo([ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int|): R|kotlin/String| { + ^foo String(boo) + } + +FILE RAW TO BODY: +FILE: [ResolvedTo(IMPORTS)] functionParameter.kt + [ResolvedTo(BODY_RESOLVE)] annotations container + public final [ResolvedTo(BODY_RESOLVE)] fun foo([ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int|): R|kotlin/String| { + ^foo String(boo) + } diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionWithGenericExpectedTypeInside.kt b/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionWithGenericExpectedTypeInside.kt index e86c549ba37..90ec7be8177 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionWithGenericExpectedTypeInside.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionWithGenericExpectedTypeInside.kt @@ -4,6 +4,6 @@ class Bar : Foo fun bar() = Bar() -fun resolveMe() { +fun resolveMe() { val x: Foo = bar() } diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionWithGenericExpectedTypeInside.txt b/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionWithGenericExpectedTypeInside.txt index df3e4cc6451..5b017b2f871 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionWithGenericExpectedTypeInside.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionWithGenericExpectedTypeInside.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] functionWithGenericExpectedTypeInside.kt [ResolvedTo(RAW_FIR)] annotations container diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionWithTypeParameters.kt b/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionWithTypeParameters.kt index f006c4bd0b8..738ed622f28 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionWithTypeParameters.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionWithTypeParameters.kt @@ -1 +1 @@ -fun resolveMe() {} \ No newline at end of file +fun resolveMe() {} \ No newline at end of file diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionWithTypeParameters.txt b/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionWithTypeParameters.txt index f4397398e71..f74ec534ec1 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionWithTypeParameters.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/functions/functionWithTypeParameters.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] functionWithTypeParameters.kt [ResolvedTo(RAW_FIR)] annotations container diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/lambdaAsSAMInterface.kt b/analysis/low-level-api-fir/testdata/lazyResolve/lambdaAsSAMInterface.kt index ed945d624be..19f8f63dafa 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/lambdaAsSAMInterface.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/lambdaAsSAMInterface.kt @@ -8,6 +8,6 @@ fun interface Foo { fun testMe(f: Foo) {} -fun resolveMe() { +fun resolveMe() { testMe { b -> b } } \ No newline at end of file diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/lambdaAsSAMInterface.txt b/analysis/low-level-api-fir/testdata/lazyResolve/lambdaAsSAMInterface.txt index cc8d0c9b07d..f507458e0a9 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/lambdaAsSAMInterface.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/lambdaAsSAMInterface.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] lambdaAsSAMInterface.kt [ResolvedTo(RAW_FIR)] annotations container diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/parameterOfNonLocalSetter.kt b/analysis/low-level-api-fir/testdata/lazyResolve/parameterOfNonLocalSetter.kt index 23e64fcc301..e104bd24ff1 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/parameterOfNonLocalSetter.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/parameterOfNonLocalSetter.kt @@ -1,4 +1,4 @@ class X { var x: Int = 2 - set(resolveMe) = Unit + set(resolveMe) = Unit } \ No newline at end of file diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/parameterOfNonLocalSetter.txt b/analysis/low-level-api-fir/testdata/lazyResolve/parameterOfNonLocalSetter.txt index b4ec131b6a9..e22cd121669 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/parameterOfNonLocalSetter.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/parameterOfNonLocalSetter.txt @@ -1,85 +1,96 @@ - RAW_FIR: -FILE: [ResolvedTo(RAW_FIR)] parameterOfNonLocalSetter.kt +FILE: [ResolvedTo(IMPORTS)] parameterOfNonLocalSetter.kt [ResolvedTo(RAW_FIR)] annotations container - public? final? [ResolvedTo(RAW_FIR)] class X : R|kotlin/Any| { - public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=X] constructor(): R|X| { + public final [ResolvedTo(STATUS)] class X : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=X] constructor(): R|X| { LAZY_super } - public? final? [ResolvedTo(RAW_FIR)] var x: Int = LAZY_EXPRESSION - public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=X] get(): Int - public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=X] set([ResolvedTo(RAW_FIR)] resolveMe: Int): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] var x: R|kotlin/Int| = Int(2) + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=X] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=X] set([ResolvedTo(BODY_RESOLVE)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { + ^ Q|kotlin/Unit| + } } IMPORTS: FILE: [ResolvedTo(IMPORTS)] parameterOfNonLocalSetter.kt [ResolvedTo(RAW_FIR)] annotations container - public? final? [ResolvedTo(RAW_FIR)] class X : R|kotlin/Any| { - public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=X] constructor(): R|X| { + public final [ResolvedTo(STATUS)] class X : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=X] constructor(): R|X| { LAZY_super } - public? final? [ResolvedTo(RAW_FIR)] var x: Int = LAZY_EXPRESSION - public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=X] get(): Int - public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=X] set([ResolvedTo(RAW_FIR)] resolveMe: Int): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] var x: R|kotlin/Int| = Int(2) + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=X] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=X] set([ResolvedTo(BODY_RESOLVE)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { + ^ Q|kotlin/Unit| + } } COMPILER_REQUIRED_ANNOTATIONS: FILE: [ResolvedTo(IMPORTS)] parameterOfNonLocalSetter.kt [ResolvedTo(RAW_FIR)] annotations container - public? final? [ResolvedTo(RAW_FIR)] class X : R|kotlin/Any| { - public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=X] constructor(): R|X| { + public final [ResolvedTo(STATUS)] class X : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=X] constructor(): R|X| { LAZY_super } - public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] var x: Int = LAZY_EXPRESSION - public? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] [ContainingClassKey=X] get(): Int - public? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] [ContainingClassKey=X] set([ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] resolveMe: Int): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] var x: R|kotlin/Int| = Int(2) + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=X] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=X] set([ResolvedTo(BODY_RESOLVE)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { + ^ Q|kotlin/Unit| + } } COMPANION_GENERATION: FILE: [ResolvedTo(IMPORTS)] parameterOfNonLocalSetter.kt [ResolvedTo(RAW_FIR)] annotations container - public? final? [ResolvedTo(RAW_FIR)] class X : R|kotlin/Any| { - public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=X] constructor(): R|X| { + public final [ResolvedTo(STATUS)] class X : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=X] constructor(): R|X| { LAZY_super } - public? final? [ResolvedTo(COMPANION_GENERATION)] var x: Int = LAZY_EXPRESSION - public? [ResolvedTo(COMPANION_GENERATION)] [ContainingClassKey=X] get(): Int - public? [ResolvedTo(COMPANION_GENERATION)] [ContainingClassKey=X] set([ResolvedTo(COMPANION_GENERATION)] resolveMe: Int): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] var x: R|kotlin/Int| = Int(2) + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=X] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=X] set([ResolvedTo(BODY_RESOLVE)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { + ^ Q|kotlin/Unit| + } } SUPER_TYPES: FILE: [ResolvedTo(IMPORTS)] parameterOfNonLocalSetter.kt [ResolvedTo(RAW_FIR)] annotations container - public? final? [ResolvedTo(SUPER_TYPES)] class X : R|kotlin/Any| { - public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=X] constructor(): R|X| { + public final [ResolvedTo(STATUS)] class X : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=X] constructor(): R|X| { LAZY_super } - public? final? [ResolvedTo(SUPER_TYPES)] var x: Int = LAZY_EXPRESSION - public? [ResolvedTo(SUPER_TYPES)] [ContainingClassKey=X] get(): Int - public? [ResolvedTo(SUPER_TYPES)] [ContainingClassKey=X] set([ResolvedTo(SUPER_TYPES)] resolveMe: Int): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] var x: R|kotlin/Int| = Int(2) + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=X] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=X] set([ResolvedTo(BODY_RESOLVE)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { + ^ Q|kotlin/Unit| + } } TYPES: FILE: [ResolvedTo(IMPORTS)] parameterOfNonLocalSetter.kt [ResolvedTo(RAW_FIR)] annotations container - public? final? [ResolvedTo(TYPES)] class X : R|kotlin/Any| { - public? [ResolvedTo(TYPES)] [ContainingClassKey=X] constructor(): R|X| { + public final [ResolvedTo(STATUS)] class X : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=X] constructor(): R|X| { LAZY_super } - public? final? [ResolvedTo(TYPES)] var x: R|kotlin/Int| = LAZY_EXPRESSION - public? [ResolvedTo(TYPES)] [ContainingClassKey=X] get(): R|kotlin/Int| - public? [ResolvedTo(TYPES)] [ContainingClassKey=X] set([ResolvedTo(TYPES)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] var x: R|kotlin/Int| = Int(2) + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=X] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=X] set([ResolvedTo(BODY_RESOLVE)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { + ^ Q|kotlin/Unit| + } } @@ -91,9 +102,11 @@ FILE: [ResolvedTo(IMPORTS)] parameterOfNonLocalSetter.kt LAZY_super } - public final [ResolvedTo(STATUS)] var x: R|kotlin/Int| = LAZY_EXPRESSION - public [ResolvedTo(STATUS)] [ContainingClassKey=X] get(): R|kotlin/Int| - public [ResolvedTo(STATUS)] [ContainingClassKey=X] set([ResolvedTo(STATUS)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] var x: R|kotlin/Int| = Int(2) + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=X] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=X] set([ResolvedTo(BODY_RESOLVE)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { + ^ Q|kotlin/Unit| + } } @@ -105,9 +118,11 @@ FILE: [ResolvedTo(IMPORTS)] parameterOfNonLocalSetter.kt LAZY_super } - public final [ResolvedTo(EXPECT_ACTUAL_MATCHING)] var x: R|kotlin/Int| = LAZY_EXPRESSION - public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=X] get(): R|kotlin/Int| - public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=X] set([ResolvedTo(EXPECT_ACTUAL_MATCHING)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] var x: R|kotlin/Int| = Int(2) + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=X] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=X] set([ResolvedTo(BODY_RESOLVE)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { + ^ Q|kotlin/Unit| + } } @@ -119,9 +134,11 @@ FILE: [ResolvedTo(IMPORTS)] parameterOfNonLocalSetter.kt LAZY_super } - public final [ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] var x: R|kotlin/Int| = LAZY_EXPRESSION - public [ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] [ContainingClassKey=X] get(): R|kotlin/Int| - public [ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] [ContainingClassKey=X] set([ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] var x: R|kotlin/Int| = Int(2) + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=X] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=X] set([ResolvedTo(BODY_RESOLVE)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { + ^ Q|kotlin/Unit| + } } @@ -133,10 +150,10 @@ FILE: [ResolvedTo(IMPORTS)] parameterOfNonLocalSetter.kt LAZY_super } - public final [ResolvedTo(CONTRACTS)] var x: R|kotlin/Int| = IntegerLiteral(2) - public [ResolvedTo(CONTRACTS)] [ContainingClassKey=X] get(): R|kotlin/Int| - public [ResolvedTo(CONTRACTS)] [ContainingClassKey=X] set([ResolvedTo(CONTRACTS)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { - ^ Unit# + public final [ResolvedTo(BODY_RESOLVE)] var x: R|kotlin/Int| = Int(2) + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=X] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=X] set([ResolvedTo(BODY_RESOLVE)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { + ^ Q|kotlin/Unit| } } @@ -149,10 +166,10 @@ FILE: [ResolvedTo(IMPORTS)] parameterOfNonLocalSetter.kt LAZY_super } - public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] var x: R|kotlin/Int| = IntegerLiteral(2) - public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=X] get(): R|kotlin/Int| - public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=X] set([ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { - ^ Unit# + public final [ResolvedTo(BODY_RESOLVE)] var x: R|kotlin/Int| = Int(2) + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=X] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=X] set([ResolvedTo(BODY_RESOLVE)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { + ^ Q|kotlin/Unit| } } @@ -165,10 +182,10 @@ FILE: [ResolvedTo(IMPORTS)] parameterOfNonLocalSetter.kt LAZY_super } - public final [ResolvedTo(ANNOTATIONS_ARGUMENTS_MAPPING)] var x: R|kotlin/Int| = IntegerLiteral(2) - public [ResolvedTo(ANNOTATIONS_ARGUMENTS_MAPPING)] [ContainingClassKey=X] get(): R|kotlin/Int| - public [ResolvedTo(ANNOTATIONS_ARGUMENTS_MAPPING)] [ContainingClassKey=X] set([ResolvedTo(ANNOTATIONS_ARGUMENTS_MAPPING)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { - ^ Unit# + public final [ResolvedTo(BODY_RESOLVE)] var x: R|kotlin/Int| = Int(2) + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=X] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=X] set([ResolvedTo(BODY_RESOLVE)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { + ^ Q|kotlin/Unit| } } diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/primaryConstructorParameter.kt b/analysis/low-level-api-fir/testdata/lazyResolve/primaryConstructorParameter.kt new file mode 100644 index 00000000000..1c7fef0eccc --- /dev/null +++ b/analysis/low-level-api-fir/testdata/lazyResolve/primaryConstructorParameter.kt @@ -0,0 +1,3 @@ +class A(a: Boolean, param: Int = 1, c: Long) { + fun foo() = "str" +} \ No newline at end of file diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/primaryConstructorParameter.txt b/analysis/low-level-api-fir/testdata/lazyResolve/primaryConstructorParameter.txt new file mode 100644 index 00000000000..f2a7be0b0bc --- /dev/null +++ b/analysis/low-level-api-fir/testdata/lazyResolve/primaryConstructorParameter.txt @@ -0,0 +1,169 @@ +RAW_FIR: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int| = Int(1), [ResolvedTo(BODY_RESOLVE)] c: R|kotlin/Long|): R|A| { + super() + } + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + +IMPORTS: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int| = Int(1), [ResolvedTo(BODY_RESOLVE)] c: R|kotlin/Long|): R|A| { + super() + } + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + +COMPILER_REQUIRED_ANNOTATIONS: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int| = Int(1), [ResolvedTo(BODY_RESOLVE)] c: R|kotlin/Long|): R|A| { + super() + } + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + +COMPANION_GENERATION: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int| = Int(1), [ResolvedTo(BODY_RESOLVE)] c: R|kotlin/Long|): R|A| { + super() + } + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + +SUPER_TYPES: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int| = Int(1), [ResolvedTo(BODY_RESOLVE)] c: R|kotlin/Long|): R|A| { + super() + } + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + +TYPES: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int| = Int(1), [ResolvedTo(BODY_RESOLVE)] c: R|kotlin/Long|): R|A| { + super() + } + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + +STATUS: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int| = Int(1), [ResolvedTo(BODY_RESOLVE)] c: R|kotlin/Long|): R|A| { + super() + } + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + +EXPECT_ACTUAL_MATCHING: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int| = Int(1), [ResolvedTo(BODY_RESOLVE)] c: R|kotlin/Long|): R|A| { + super() + } + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + +ARGUMENTS_OF_ANNOTATIONS: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int| = Int(1), [ResolvedTo(BODY_RESOLVE)] c: R|kotlin/Long|): R|A| { + super() + } + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + +CONTRACTS: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int| = Int(1), [ResolvedTo(BODY_RESOLVE)] c: R|kotlin/Long|): R|A| { + super() + } + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + +IMPLICIT_TYPES_BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int| = Int(1), [ResolvedTo(BODY_RESOLVE)] c: R|kotlin/Long|): R|A| { + super() + } + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + +ANNOTATIONS_ARGUMENTS_MAPPING: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int| = Int(1), [ResolvedTo(BODY_RESOLVE)] c: R|kotlin/Long|): R|A| { + super() + } + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + +BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int| = Int(1), [ResolvedTo(BODY_RESOLVE)] c: R|kotlin/Long|): R|A| { + super() + } + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + +FILE RAW TO BODY: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorParameter.kt + [ResolvedTo(BODY_RESOLVE)] annotations container + public final [ResolvedTo(BODY_RESOLVE)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] param: R|kotlin/Int| = Int(1), [ResolvedTo(BODY_RESOLVE)] c: R|kotlin/Long|): R|A| { + super() + } + + public final [ResolvedTo(BODY_RESOLVE)] fun foo(): R|kotlin/String| { + ^foo String(str) + } + + } diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/primaryConstructorProperty.kt b/analysis/low-level-api-fir/testdata/lazyResolve/primaryConstructorProperty.kt new file mode 100644 index 00000000000..e8d7babf20b --- /dev/null +++ b/analysis/low-level-api-fir/testdata/lazyResolve/primaryConstructorProperty.kt @@ -0,0 +1,3 @@ +class A(a: Boolean, val prop: Int = 42) { + fun foo() = "str" +} \ No newline at end of file diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/primaryConstructorProperty.txt b/analysis/low-level-api-fir/testdata/lazyResolve/primaryConstructorProperty.txt new file mode 100644 index 00000000000..158604a1460 --- /dev/null +++ b/analysis/low-level-api-fir/testdata/lazyResolve/primaryConstructorProperty.txt @@ -0,0 +1,211 @@ +RAW_FIR: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorProperty.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = Int(42)): R|A| { + super() + } + + public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + +IMPORTS: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorProperty.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = Int(42)): R|A| { + super() + } + + public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + +COMPILER_REQUIRED_ANNOTATIONS: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorProperty.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = Int(42)): R|A| { + super() + } + + public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + +COMPANION_GENERATION: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorProperty.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = Int(42)): R|A| { + super() + } + + public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + +SUPER_TYPES: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorProperty.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = Int(42)): R|A| { + super() + } + + public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + +TYPES: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorProperty.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = Int(42)): R|A| { + super() + } + + public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + +STATUS: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorProperty.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = Int(42)): R|A| { + super() + } + + public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + +EXPECT_ACTUAL_MATCHING: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorProperty.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = Int(42)): R|A| { + super() + } + + public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + +ARGUMENTS_OF_ANNOTATIONS: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorProperty.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = Int(42)): R|A| { + super() + } + + public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + +CONTRACTS: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorProperty.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = Int(42)): R|A| { + super() + } + + public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + +IMPLICIT_TYPES_BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorProperty.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = Int(42)): R|A| { + super() + } + + public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + +ANNOTATIONS_ARGUMENTS_MAPPING: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorProperty.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = Int(42)): R|A| { + super() + } + + public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + +BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorProperty.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = Int(42)): R|A| { + super() + } + + public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + +FILE RAW TO BODY: +FILE: [ResolvedTo(IMPORTS)] primaryConstructorProperty.kt + [ResolvedTo(BODY_RESOLVE)] annotations container + public final [ResolvedTo(BODY_RESOLVE)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/Boolean|, [ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = Int(42)): R|A| { + super() + } + + public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public final [ResolvedTo(BODY_RESOLVE)] fun foo(): R|kotlin/String| { + ^foo String(str) + } + + } diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyGetterWithExplicitType.kt b/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyGetterWithExplicitType.kt new file mode 100644 index 00000000000..1110fb9099d --- /dev/null +++ b/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyGetterWithExplicitType.kt @@ -0,0 +1 @@ +val prop: Int get() = 42 \ No newline at end of file diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyGetterWithExplicitType.txt b/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyGetterWithExplicitType.txt new file mode 100644 index 00000000000..025067c06d0 --- /dev/null +++ b/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyGetterWithExplicitType.txt @@ -0,0 +1,93 @@ +RAW_FIR: +FILE: [ResolvedTo(RAW_FIR)] propertyGetterWithExplicitType.kt + [ResolvedTo(RAW_FIR)] annotations container + public? final? [ResolvedTo(RAW_FIR)] val prop: Int + public? [ResolvedTo(RAW_FIR)] get(): Int { LAZY_BLOCK } + +IMPORTS: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithExplicitType.kt + [ResolvedTo(RAW_FIR)] annotations container + public? final? [ResolvedTo(RAW_FIR)] val prop: Int + public? [ResolvedTo(RAW_FIR)] get(): Int { LAZY_BLOCK } + +COMPILER_REQUIRED_ANNOTATIONS: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithExplicitType.kt + [ResolvedTo(RAW_FIR)] annotations container + public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] val prop: Int + public? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] get(): Int { LAZY_BLOCK } + +COMPANION_GENERATION: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithExplicitType.kt + [ResolvedTo(RAW_FIR)] annotations container + public? final? [ResolvedTo(COMPANION_GENERATION)] val prop: Int + public? [ResolvedTo(COMPANION_GENERATION)] get(): Int { LAZY_BLOCK } + +SUPER_TYPES: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithExplicitType.kt + [ResolvedTo(RAW_FIR)] annotations container + public? final? [ResolvedTo(SUPER_TYPES)] val prop: Int + public? [ResolvedTo(SUPER_TYPES)] get(): Int { LAZY_BLOCK } + +TYPES: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithExplicitType.kt + [ResolvedTo(RAW_FIR)] annotations container + public? final? [ResolvedTo(TYPES)] val prop: R|kotlin/Int| + public? [ResolvedTo(TYPES)] get(): R|kotlin/Int| { LAZY_BLOCK } + +STATUS: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithExplicitType.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] val prop: R|kotlin/Int| + public [ResolvedTo(STATUS)] get(): R|kotlin/Int| { LAZY_BLOCK } + +EXPECT_ACTUAL_MATCHING: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithExplicitType.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(EXPECT_ACTUAL_MATCHING)] val prop: R|kotlin/Int| + public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] get(): R|kotlin/Int| { LAZY_BLOCK } + +ARGUMENTS_OF_ANNOTATIONS: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithExplicitType.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] val prop: R|kotlin/Int| + public [ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] get(): R|kotlin/Int| { LAZY_BLOCK } + +CONTRACTS: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithExplicitType.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(CONTRACTS)] val prop: R|kotlin/Int| + public [ResolvedTo(CONTRACTS)] get(): R|kotlin/Int| { + ^ IntegerLiteral(42) + } + +IMPLICIT_TYPES_BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithExplicitType.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val prop: R|kotlin/Int| + public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|kotlin/Int| { + ^ IntegerLiteral(42) + } + +ANNOTATIONS_ARGUMENTS_MAPPING: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithExplicitType.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(ANNOTATIONS_ARGUMENTS_MAPPING)] val prop: R|kotlin/Int| + public [ResolvedTo(ANNOTATIONS_ARGUMENTS_MAPPING)] get(): R|kotlin/Int| { + ^ IntegerLiteral(42) + } + +BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithExplicitType.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(BODY_RESOLVE)] val prop: R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int| { + ^ Int(42) + } + +FILE RAW TO BODY: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithExplicitType.kt + [ResolvedTo(BODY_RESOLVE)] annotations container + public final [ResolvedTo(BODY_RESOLVE)] val prop: R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int| { + ^ Int(42) + } diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyGetterWithExplicitTypeAndBody.kt b/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyGetterWithExplicitTypeAndBody.kt new file mode 100644 index 00000000000..a8b87d044a6 --- /dev/null +++ b/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyGetterWithExplicitTypeAndBody.kt @@ -0,0 +1,4 @@ +val prop: Int + get() { + return 42 + } \ No newline at end of file diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyGetterWithExplicitTypeAndBody.txt b/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyGetterWithExplicitTypeAndBody.txt new file mode 100644 index 00000000000..ec86f82ffb1 --- /dev/null +++ b/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyGetterWithExplicitTypeAndBody.txt @@ -0,0 +1,93 @@ +RAW_FIR: +FILE: [ResolvedTo(RAW_FIR)] propertyGetterWithExplicitTypeAndBody.kt + [ResolvedTo(RAW_FIR)] annotations container + public? final? [ResolvedTo(RAW_FIR)] val prop: Int + public? [ResolvedTo(RAW_FIR)] get(): Int { LAZY_BLOCK } + +IMPORTS: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithExplicitTypeAndBody.kt + [ResolvedTo(RAW_FIR)] annotations container + public? final? [ResolvedTo(RAW_FIR)] val prop: Int + public? [ResolvedTo(RAW_FIR)] get(): Int { LAZY_BLOCK } + +COMPILER_REQUIRED_ANNOTATIONS: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithExplicitTypeAndBody.kt + [ResolvedTo(RAW_FIR)] annotations container + public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] val prop: Int + public? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] get(): Int { LAZY_BLOCK } + +COMPANION_GENERATION: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithExplicitTypeAndBody.kt + [ResolvedTo(RAW_FIR)] annotations container + public? final? [ResolvedTo(COMPANION_GENERATION)] val prop: Int + public? [ResolvedTo(COMPANION_GENERATION)] get(): Int { LAZY_BLOCK } + +SUPER_TYPES: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithExplicitTypeAndBody.kt + [ResolvedTo(RAW_FIR)] annotations container + public? final? [ResolvedTo(SUPER_TYPES)] val prop: Int + public? [ResolvedTo(SUPER_TYPES)] get(): Int { LAZY_BLOCK } + +TYPES: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithExplicitTypeAndBody.kt + [ResolvedTo(RAW_FIR)] annotations container + public? final? [ResolvedTo(TYPES)] val prop: R|kotlin/Int| + public? [ResolvedTo(TYPES)] get(): R|kotlin/Int| { LAZY_BLOCK } + +STATUS: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithExplicitTypeAndBody.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] val prop: R|kotlin/Int| + public [ResolvedTo(STATUS)] get(): R|kotlin/Int| { LAZY_BLOCK } + +EXPECT_ACTUAL_MATCHING: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithExplicitTypeAndBody.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(EXPECT_ACTUAL_MATCHING)] val prop: R|kotlin/Int| + public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] get(): R|kotlin/Int| { LAZY_BLOCK } + +ARGUMENTS_OF_ANNOTATIONS: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithExplicitTypeAndBody.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] val prop: R|kotlin/Int| + public [ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] get(): R|kotlin/Int| { LAZY_BLOCK } + +CONTRACTS: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithExplicitTypeAndBody.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(CONTRACTS)] val prop: R|kotlin/Int| + public [ResolvedTo(CONTRACTS)] get(): R|kotlin/Int| { + ^ IntegerLiteral(42) + } + +IMPLICIT_TYPES_BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithExplicitTypeAndBody.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val prop: R|kotlin/Int| + public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|kotlin/Int| { + ^ IntegerLiteral(42) + } + +ANNOTATIONS_ARGUMENTS_MAPPING: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithExplicitTypeAndBody.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(ANNOTATIONS_ARGUMENTS_MAPPING)] val prop: R|kotlin/Int| + public [ResolvedTo(ANNOTATIONS_ARGUMENTS_MAPPING)] get(): R|kotlin/Int| { + ^ IntegerLiteral(42) + } + +BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithExplicitTypeAndBody.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(BODY_RESOLVE)] val prop: R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int| { + ^ Int(42) + } + +FILE RAW TO BODY: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithExplicitTypeAndBody.kt + [ResolvedTo(BODY_RESOLVE)] annotations container + public final [ResolvedTo(BODY_RESOLVE)] val prop: R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int| { + ^ Int(42) + } diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyGetterWithImplicitType.kt b/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyGetterWithImplicitType.kt new file mode 100644 index 00000000000..1bc9b1a0c74 --- /dev/null +++ b/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyGetterWithImplicitType.kt @@ -0,0 +1 @@ +val prop get() = 42 \ No newline at end of file diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyGetterWithImplicitType.txt b/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyGetterWithImplicitType.txt new file mode 100644 index 00000000000..a6c1c8c021d --- /dev/null +++ b/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyGetterWithImplicitType.txt @@ -0,0 +1,93 @@ +RAW_FIR: +FILE: [ResolvedTo(RAW_FIR)] propertyGetterWithImplicitType.kt + [ResolvedTo(RAW_FIR)] annotations container + public? final? [ResolvedTo(RAW_FIR)] val prop: + public? [ResolvedTo(RAW_FIR)] get(): { LAZY_BLOCK } + +IMPORTS: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithImplicitType.kt + [ResolvedTo(RAW_FIR)] annotations container + public? final? [ResolvedTo(RAW_FIR)] val prop: + public? [ResolvedTo(RAW_FIR)] get(): { LAZY_BLOCK } + +COMPILER_REQUIRED_ANNOTATIONS: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithImplicitType.kt + [ResolvedTo(RAW_FIR)] annotations container + public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] val prop: + public? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] get(): { LAZY_BLOCK } + +COMPANION_GENERATION: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithImplicitType.kt + [ResolvedTo(RAW_FIR)] annotations container + public? final? [ResolvedTo(COMPANION_GENERATION)] val prop: + public? [ResolvedTo(COMPANION_GENERATION)] get(): { LAZY_BLOCK } + +SUPER_TYPES: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithImplicitType.kt + [ResolvedTo(RAW_FIR)] annotations container + public? final? [ResolvedTo(SUPER_TYPES)] val prop: + public? [ResolvedTo(SUPER_TYPES)] get(): { LAZY_BLOCK } + +TYPES: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithImplicitType.kt + [ResolvedTo(RAW_FIR)] annotations container + public? final? [ResolvedTo(TYPES)] val prop: + public? [ResolvedTo(TYPES)] get(): { LAZY_BLOCK } + +STATUS: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithImplicitType.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] val prop: + public [ResolvedTo(STATUS)] get(): { LAZY_BLOCK } + +EXPECT_ACTUAL_MATCHING: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithImplicitType.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(EXPECT_ACTUAL_MATCHING)] val prop: + public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] get(): { LAZY_BLOCK } + +ARGUMENTS_OF_ANNOTATIONS: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithImplicitType.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] val prop: + public [ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] get(): { LAZY_BLOCK } + +CONTRACTS: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithImplicitType.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(CONTRACTS)] val prop: + public [ResolvedTo(CONTRACTS)] get(): { + ^ IntegerLiteral(42) + } + +IMPLICIT_TYPES_BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithImplicitType.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val prop: R|kotlin/Int| + public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|kotlin/Int| { + ^ Int(42) + } + +ANNOTATIONS_ARGUMENTS_MAPPING: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithImplicitType.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(ANNOTATIONS_ARGUMENTS_MAPPING)] val prop: R|kotlin/Int| + public [ResolvedTo(ANNOTATIONS_ARGUMENTS_MAPPING)] get(): R|kotlin/Int| { + ^ Int(42) + } + +BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithImplicitType.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(BODY_RESOLVE)] val prop: R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int| { + ^ Int(42) + } + +FILE RAW TO BODY: +FILE: [ResolvedTo(IMPORTS)] propertyGetterWithImplicitType.kt + [ResolvedTo(BODY_RESOLVE)] annotations container + public final [ResolvedTo(BODY_RESOLVE)] val prop: R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int| { + ^ Int(42) + } diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertySetter.kt b/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertySetter.kt new file mode 100644 index 00000000000..d301b892e7c --- /dev/null +++ b/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertySetter.kt @@ -0,0 +1,4 @@ +var prop = 42 + set(value) { + + } \ No newline at end of file diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertySetter.txt b/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertySetter.txt new file mode 100644 index 00000000000..4676339dae2 --- /dev/null +++ b/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertySetter.txt @@ -0,0 +1,102 @@ +RAW_FIR: +FILE: [ResolvedTo(RAW_FIR)] propertySetter.kt + [ResolvedTo(RAW_FIR)] annotations container + public? final? [ResolvedTo(RAW_FIR)] var prop: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? [ResolvedTo(RAW_FIR)] set([ResolvedTo(RAW_FIR)] value: ): R|kotlin/Unit| { LAZY_BLOCK } + +IMPORTS: +FILE: [ResolvedTo(IMPORTS)] propertySetter.kt + [ResolvedTo(RAW_FIR)] annotations container + public? final? [ResolvedTo(RAW_FIR)] var prop: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? [ResolvedTo(RAW_FIR)] set([ResolvedTo(RAW_FIR)] value: ): R|kotlin/Unit| { LAZY_BLOCK } + +COMPILER_REQUIRED_ANNOTATIONS: +FILE: [ResolvedTo(IMPORTS)] propertySetter.kt + [ResolvedTo(RAW_FIR)] annotations container + public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] var prop: = LAZY_EXPRESSION + public? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] get(): + public? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] set([ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] value: ): R|kotlin/Unit| { LAZY_BLOCK } + +COMPANION_GENERATION: +FILE: [ResolvedTo(IMPORTS)] propertySetter.kt + [ResolvedTo(RAW_FIR)] annotations container + public? final? [ResolvedTo(COMPANION_GENERATION)] var prop: = LAZY_EXPRESSION + public? [ResolvedTo(COMPANION_GENERATION)] get(): + public? [ResolvedTo(COMPANION_GENERATION)] set([ResolvedTo(COMPANION_GENERATION)] value: ): R|kotlin/Unit| { LAZY_BLOCK } + +SUPER_TYPES: +FILE: [ResolvedTo(IMPORTS)] propertySetter.kt + [ResolvedTo(RAW_FIR)] annotations container + public? final? [ResolvedTo(SUPER_TYPES)] var prop: = LAZY_EXPRESSION + public? [ResolvedTo(SUPER_TYPES)] get(): + public? [ResolvedTo(SUPER_TYPES)] set([ResolvedTo(SUPER_TYPES)] value: ): R|kotlin/Unit| { LAZY_BLOCK } + +TYPES: +FILE: [ResolvedTo(IMPORTS)] propertySetter.kt + [ResolvedTo(RAW_FIR)] annotations container + public? final? [ResolvedTo(TYPES)] var prop: = LAZY_EXPRESSION + public? [ResolvedTo(TYPES)] get(): + public? [ResolvedTo(TYPES)] set([ResolvedTo(TYPES)] value: ): R|kotlin/Unit| { LAZY_BLOCK } + +STATUS: +FILE: [ResolvedTo(IMPORTS)] propertySetter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] var prop: = LAZY_EXPRESSION + public [ResolvedTo(STATUS)] get(): + public [ResolvedTo(STATUS)] set([ResolvedTo(STATUS)] value: ): R|kotlin/Unit| { LAZY_BLOCK } + +EXPECT_ACTUAL_MATCHING: +FILE: [ResolvedTo(IMPORTS)] propertySetter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(EXPECT_ACTUAL_MATCHING)] var prop: = LAZY_EXPRESSION + public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] get(): + public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] set([ResolvedTo(EXPECT_ACTUAL_MATCHING)] value: ): R|kotlin/Unit| { LAZY_BLOCK } + +ARGUMENTS_OF_ANNOTATIONS: +FILE: [ResolvedTo(IMPORTS)] propertySetter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] var prop: = LAZY_EXPRESSION + public [ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] get(): + public [ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] set([ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] value: ): R|kotlin/Unit| { LAZY_BLOCK } + +CONTRACTS: +FILE: [ResolvedTo(IMPORTS)] propertySetter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(CONTRACTS)] var prop: = IntegerLiteral(42) + public [ResolvedTo(CONTRACTS)] get(): + public [ResolvedTo(CONTRACTS)] set([ResolvedTo(CONTRACTS)] value: ): R|kotlin/Unit| { + } + +IMPLICIT_TYPES_BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] propertySetter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] var prop: R|kotlin/Int| = Int(42) + public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|kotlin/Int| + public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] set([ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] value: R|kotlin/Int|): R|kotlin/Unit| { + } + +ANNOTATIONS_ARGUMENTS_MAPPING: +FILE: [ResolvedTo(IMPORTS)] propertySetter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(ANNOTATIONS_ARGUMENTS_MAPPING)] var prop: R|kotlin/Int| = Int(42) + public [ResolvedTo(ANNOTATIONS_ARGUMENTS_MAPPING)] get(): R|kotlin/Int| + public [ResolvedTo(ANNOTATIONS_ARGUMENTS_MAPPING)] set([ResolvedTo(ANNOTATIONS_ARGUMENTS_MAPPING)] value: R|kotlin/Int|): R|kotlin/Unit| { + } + +BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] propertySetter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(BODY_RESOLVE)] var prop: R|kotlin/Int| = Int(42) + public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] set([ResolvedTo(BODY_RESOLVE)] value: R|kotlin/Int|): R|kotlin/Unit| { + } + +FILE RAW TO BODY: +FILE: [ResolvedTo(IMPORTS)] propertySetter.kt + [ResolvedTo(BODY_RESOLVE)] annotations container + public final [ResolvedTo(BODY_RESOLVE)] var prop: R|kotlin/Int| = Int(42) + public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] set([ResolvedTo(BODY_RESOLVE)] value: R|kotlin/Int|): R|kotlin/Unit| { + } diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyWithTypeParameters.kt b/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyWithTypeParameters.kt index f3f2b3dcd3d..b66bb2f5d73 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyWithTypeParameters.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyWithTypeParameters.kt @@ -1,4 +1,4 @@ // SKIP_WHEN_OUT_OF_CONTENT_ROOT -val T.resolveMe: K +val T.resolveMe: K get() = TODO() \ No newline at end of file diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyWithTypeParameters.txt b/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyWithTypeParameters.txt index 322ad70c4c7..219698859c1 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyWithTypeParameters.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyWithTypeParameters.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] propertyWithTypeParameters.kt [ResolvedTo(RAW_FIR)] annotations container diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/propertyWithGetter.kt b/analysis/low-level-api-fir/testdata/lazyResolve/propertyWithGetter.kt index a291965a72b..7fc2a7b4447 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/propertyWithGetter.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/propertyWithGetter.kt @@ -1,4 +1,4 @@ -fun resolveMe() { +fun resolveMe() { receive(withGetter) } diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/propertyWithGetter.txt b/analysis/low-level-api-fir/testdata/lazyResolve/propertyWithGetter.txt index dc0c43f5090..1f388252536 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/propertyWithGetter.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/propertyWithGetter.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] propertyWithGetter.kt [ResolvedTo(RAW_FIR)] annotations container diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/propertyWithGetterAndSetter.kt b/analysis/low-level-api-fir/testdata/lazyResolve/propertyWithGetterAndSetter.kt index 905719bd4af..5ec2af87eda 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/propertyWithGetterAndSetter.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/propertyWithGetterAndSetter.kt @@ -1,4 +1,4 @@ -fun resolveMe() { +fun resolveMe() { receive(withGetterAndSetter) withGetterAndSetter = 123 } diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/propertyWithGetterAndSetter.txt b/analysis/low-level-api-fir/testdata/lazyResolve/propertyWithGetterAndSetter.txt index ca707fb5a74..4fdeefaf30b 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/propertyWithGetterAndSetter.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/propertyWithGetterAndSetter.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] propertyWithGetterAndSetter.kt [ResolvedTo(RAW_FIR)] annotations container diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/propertyWithInitializer.kt b/analysis/low-level-api-fir/testdata/lazyResolve/propertyWithInitializer.kt index ab004f562e6..289bdf29040 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/propertyWithInitializer.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/propertyWithInitializer.kt @@ -1,4 +1,4 @@ -fun resolveMe() { +fun resolveMe() { receive(property) } diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/propertyWithInitializer.txt b/analysis/low-level-api-fir/testdata/lazyResolve/propertyWithInitializer.txt index 2bdae3b8b62..ff32df6a111 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/propertyWithInitializer.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/propertyWithInitializer.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] propertyWithInitializer.kt [ResolvedTo(RAW_FIR)] annotations container diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/secondaryConstructor.kt b/analysis/low-level-api-fir/testdata/lazyResolve/secondaryConstructor.kt index 7cbfa1ab1c1..a2273af16be 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/secondaryConstructor.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/secondaryConstructor.kt @@ -1,4 +1,4 @@ -fun resolveMe() { +fun resolveMe() { receive(A(42)) } diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/secondaryConstructor.txt b/analysis/low-level-api-fir/testdata/lazyResolve/secondaryConstructor.txt index 462bc4c4136..0c54808e2d2 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/secondaryConstructor.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/secondaryConstructor.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] secondaryConstructor.kt [ResolvedTo(RAW_FIR)] annotations container diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/secondaryConstructorParameter.kt b/analysis/low-level-api-fir/testdata/lazyResolve/secondaryConstructorParameter.kt new file mode 100644 index 00000000000..28bc6b23f6e --- /dev/null +++ b/analysis/low-level-api-fir/testdata/lazyResolve/secondaryConstructorParameter.kt @@ -0,0 +1,7 @@ +class A(val prop: Int = 42, c: String) { + constructor(str: String) : this(str.myToInt(), str) + + fun foo() = "str" +} + +fun String.myToInt(): Int = 42 \ No newline at end of file diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/secondaryConstructorParameter.txt b/analysis/low-level-api-fir/testdata/lazyResolve/secondaryConstructorParameter.txt new file mode 100644 index 00000000000..8664385b34d --- /dev/null +++ b/analysis/low-level-api-fir/testdata/lazyResolve/secondaryConstructorParameter.txt @@ -0,0 +1,309 @@ +RAW_FIR: +FILE: [ResolvedTo(IMPORTS)] secondaryConstructorParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=A] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = LAZY_EXPRESSION, [ResolvedTo(STATUS)] c: R|kotlin/String|): R|A| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] str: R|kotlin/String|): R|A| { + this(R|/str|.R|/myToInt|(), R|/str|) + } + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + public final [ResolvedTo(CONTRACTS)] fun R|kotlin/String|.myToInt(): R|kotlin/Int| { + ^myToInt IntegerLiteral(42) + } + +IMPORTS: +FILE: [ResolvedTo(IMPORTS)] secondaryConstructorParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=A] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = LAZY_EXPRESSION, [ResolvedTo(STATUS)] c: R|kotlin/String|): R|A| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] str: R|kotlin/String|): R|A| { + this(R|/str|.R|/myToInt|(), R|/str|) + } + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + public final [ResolvedTo(CONTRACTS)] fun R|kotlin/String|.myToInt(): R|kotlin/Int| { + ^myToInt IntegerLiteral(42) + } + +COMPILER_REQUIRED_ANNOTATIONS: +FILE: [ResolvedTo(IMPORTS)] secondaryConstructorParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=A] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = LAZY_EXPRESSION, [ResolvedTo(STATUS)] c: R|kotlin/String|): R|A| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] str: R|kotlin/String|): R|A| { + this(R|/str|.R|/myToInt|(), R|/str|) + } + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + public final [ResolvedTo(CONTRACTS)] fun R|kotlin/String|.myToInt(): R|kotlin/Int| { + ^myToInt IntegerLiteral(42) + } + +COMPANION_GENERATION: +FILE: [ResolvedTo(IMPORTS)] secondaryConstructorParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=A] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = LAZY_EXPRESSION, [ResolvedTo(STATUS)] c: R|kotlin/String|): R|A| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] str: R|kotlin/String|): R|A| { + this(R|/str|.R|/myToInt|(), R|/str|) + } + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + public final [ResolvedTo(CONTRACTS)] fun R|kotlin/String|.myToInt(): R|kotlin/Int| { + ^myToInt IntegerLiteral(42) + } + +SUPER_TYPES: +FILE: [ResolvedTo(IMPORTS)] secondaryConstructorParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=A] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = LAZY_EXPRESSION, [ResolvedTo(STATUS)] c: R|kotlin/String|): R|A| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] str: R|kotlin/String|): R|A| { + this(R|/str|.R|/myToInt|(), R|/str|) + } + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + public final [ResolvedTo(CONTRACTS)] fun R|kotlin/String|.myToInt(): R|kotlin/Int| { + ^myToInt IntegerLiteral(42) + } + +TYPES: +FILE: [ResolvedTo(IMPORTS)] secondaryConstructorParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=A] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = LAZY_EXPRESSION, [ResolvedTo(STATUS)] c: R|kotlin/String|): R|A| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] str: R|kotlin/String|): R|A| { + this(R|/str|.R|/myToInt|(), R|/str|) + } + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + public final [ResolvedTo(CONTRACTS)] fun R|kotlin/String|.myToInt(): R|kotlin/Int| { + ^myToInt IntegerLiteral(42) + } + +STATUS: +FILE: [ResolvedTo(IMPORTS)] secondaryConstructorParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=A] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = LAZY_EXPRESSION, [ResolvedTo(STATUS)] c: R|kotlin/String|): R|A| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] str: R|kotlin/String|): R|A| { + this(R|/str|.R|/myToInt|(), R|/str|) + } + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + public final [ResolvedTo(CONTRACTS)] fun R|kotlin/String|.myToInt(): R|kotlin/Int| { + ^myToInt IntegerLiteral(42) + } + +EXPECT_ACTUAL_MATCHING: +FILE: [ResolvedTo(IMPORTS)] secondaryConstructorParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=A] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = LAZY_EXPRESSION, [ResolvedTo(STATUS)] c: R|kotlin/String|): R|A| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] str: R|kotlin/String|): R|A| { + this(R|/str|.R|/myToInt|(), R|/str|) + } + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + public final [ResolvedTo(CONTRACTS)] fun R|kotlin/String|.myToInt(): R|kotlin/Int| { + ^myToInt IntegerLiteral(42) + } + +ARGUMENTS_OF_ANNOTATIONS: +FILE: [ResolvedTo(IMPORTS)] secondaryConstructorParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=A] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = LAZY_EXPRESSION, [ResolvedTo(STATUS)] c: R|kotlin/String|): R|A| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] str: R|kotlin/String|): R|A| { + this(R|/str|.R|/myToInt|(), R|/str|) + } + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + public final [ResolvedTo(CONTRACTS)] fun R|kotlin/String|.myToInt(): R|kotlin/Int| { + ^myToInt IntegerLiteral(42) + } + +CONTRACTS: +FILE: [ResolvedTo(IMPORTS)] secondaryConstructorParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=A] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = LAZY_EXPRESSION, [ResolvedTo(STATUS)] c: R|kotlin/String|): R|A| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] str: R|kotlin/String|): R|A| { + this(R|/str|.R|/myToInt|(), R|/str|) + } + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + public final [ResolvedTo(CONTRACTS)] fun R|kotlin/String|.myToInt(): R|kotlin/Int| { + ^myToInt IntegerLiteral(42) + } + +IMPLICIT_TYPES_BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] secondaryConstructorParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=A] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = LAZY_EXPRESSION, [ResolvedTo(STATUS)] c: R|kotlin/String|): R|A| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] str: R|kotlin/String|): R|A| { + this(R|/str|.R|/myToInt|(), R|/str|) + } + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + public final [ResolvedTo(CONTRACTS)] fun R|kotlin/String|.myToInt(): R|kotlin/Int| { + ^myToInt IntegerLiteral(42) + } + +ANNOTATIONS_ARGUMENTS_MAPPING: +FILE: [ResolvedTo(IMPORTS)] secondaryConstructorParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=A] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = LAZY_EXPRESSION, [ResolvedTo(STATUS)] c: R|kotlin/String|): R|A| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] str: R|kotlin/String|): R|A| { + this(R|/str|.R|/myToInt|(), R|/str|) + } + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + public final [ResolvedTo(CONTRACTS)] fun R|kotlin/String|.myToInt(): R|kotlin/Int| { + ^myToInt IntegerLiteral(42) + } + +BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] secondaryConstructorParameter.kt + [ResolvedTo(RAW_FIR)] annotations container + public final [ResolvedTo(STATUS)] class A : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=A] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = LAZY_EXPRESSION, [ResolvedTo(STATUS)] c: R|kotlin/String|): R|A| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] str: R|kotlin/String|): R|A| { + this(R|/str|.R|/myToInt|(), R|/str|) + } + + public final [ResolvedTo(STATUS)] fun foo(): { LAZY_BLOCK } + + } + public final [ResolvedTo(CONTRACTS)] fun R|kotlin/String|.myToInt(): R|kotlin/Int| { + ^myToInt IntegerLiteral(42) + } + +FILE RAW TO BODY: +FILE: [ResolvedTo(IMPORTS)] secondaryConstructorParameter.kt + [ResolvedTo(BODY_RESOLVE)] annotations container + public final [ResolvedTo(BODY_RESOLVE)] class A : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=/A.prop] prop: R|kotlin/Int| = Int(42), [ResolvedTo(BODY_RESOLVE)] c: R|kotlin/String|): R|A| { + super() + } + + public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] val prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] get(): R|kotlin/Int| + + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=A] constructor([ResolvedTo(BODY_RESOLVE)] str: R|kotlin/String|): R|A| { + this(R|/str|.R|/myToInt|(), R|/str|) + } + + public final [ResolvedTo(BODY_RESOLVE)] fun foo(): R|kotlin/String| { + ^foo String(str) + } + + } + public final [ResolvedTo(BODY_RESOLVE)] fun R|kotlin/String|.myToInt(): R|kotlin/Int| { + ^myToInt Int(42) + } diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/superTypes.kt b/analysis/low-level-api-fir/testdata/lazyResolve/superTypes.kt index 5a01b729aa9..6c5cf239f4c 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/superTypes.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/superTypes.kt @@ -2,4 +2,4 @@ open class A open class B : A() -open class resolveMe : A() \ No newline at end of file +open class resolveMe : A() \ No newline at end of file diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/superTypes.txt b/analysis/low-level-api-fir/testdata/lazyResolve/superTypes.txt index 2d16d0acadb..82a53f7a126 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/superTypes.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/superTypes.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] superTypes.kt [ResolvedTo(RAW_FIR)] annotations container diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/superTypesLoop.kt b/analysis/low-level-api-fir/testdata/lazyResolve/superTypesLoop.kt index 666e9a4b9cb..f7aa1abb159 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/superTypesLoop.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/superTypesLoop.kt @@ -1,4 +1,4 @@ -open class resolveMe : C() +open class resolveMe : C() open class A : B() diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/superTypesLoop.txt b/analysis/low-level-api-fir/testdata/lazyResolve/superTypesLoop.txt index ae00de1ef71..d7589cac282 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/superTypesLoop.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/superTypesLoop.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] superTypesLoop.kt [ResolvedTo(RAW_FIR)] annotations container diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/topLevelFunctions.kt b/analysis/low-level-api-fir/testdata/lazyResolve/topLevelFunctions.kt index 26189b69f80..97f95ce8180 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/topLevelFunctions.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/topLevelFunctions.kt @@ -1,4 +1,4 @@ -fun resolveMe() { +fun resolveMe() { receive(functionWithLazyBody()) } diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/topLevelFunctions.txt b/analysis/low-level-api-fir/testdata/lazyResolve/topLevelFunctions.txt index 2b38dd86842..bfd5b752e23 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/topLevelFunctions.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/topLevelFunctions.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] topLevelFunctions.kt [ResolvedTo(RAW_FIR)] annotations container diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/topLevelFunctionsWithExpressionBodyAndExplicitType.kt b/analysis/low-level-api-fir/testdata/lazyResolve/topLevelFunctionsWithExpressionBodyAndExplicitType.kt index 1018387145b..5bddc279072 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/topLevelFunctionsWithExpressionBodyAndExplicitType.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/topLevelFunctionsWithExpressionBodyAndExplicitType.kt @@ -1,4 +1,4 @@ -fun resolveMe() { +fun resolveMe() { receive(functionWithLazyBody()) } diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/topLevelFunctionsWithExpressionBodyAndExplicitType.txt b/analysis/low-level-api-fir/testdata/lazyResolve/topLevelFunctionsWithExpressionBodyAndExplicitType.txt index d4e5e635ae2..ff91563c9f3 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/topLevelFunctionsWithExpressionBodyAndExplicitType.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/topLevelFunctionsWithExpressionBodyAndExplicitType.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] topLevelFunctionsWithExpressionBodyAndExplicitType.kt [ResolvedTo(RAW_FIR)] annotations container diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/topLevelFunctionsWithImplicitType.kt b/analysis/low-level-api-fir/testdata/lazyResolve/topLevelFunctionsWithImplicitType.kt index 3503630f45a..42fc18f3218 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/topLevelFunctionsWithImplicitType.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/topLevelFunctionsWithImplicitType.kt @@ -1,4 +1,4 @@ -fun resolveMe() { +fun resolveMe() { receive(functionWithLazyBody()) } diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/topLevelFunctionsWithImplicitType.txt b/analysis/low-level-api-fir/testdata/lazyResolve/topLevelFunctionsWithImplicitType.txt index 2da9fb0b9ae..2ced31a7a64 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/topLevelFunctionsWithImplicitType.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/topLevelFunctionsWithImplicitType.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] topLevelFunctionsWithImplicitType.kt [ResolvedTo(RAW_FIR)] annotations container diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/typeAliases/typeAliasWithTypeParameters.kt b/analysis/low-level-api-fir/testdata/lazyResolve/typeAliases/typeAliasWithTypeParameters.kt index 436d0800d8a..486d6b54e52 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/typeAliases/typeAliasWithTypeParameters.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/typeAliases/typeAliasWithTypeParameters.kt @@ -1 +1 @@ -typealias ResolveMe = Map \ No newline at end of file +typealias ResolveMe = Map \ No newline at end of file diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/typeAliases/typeAliasWithTypeParameters.txt b/analysis/low-level-api-fir/testdata/lazyResolve/typeAliases/typeAliasWithTypeParameters.txt index 51f607e7d5a..3b53802cec5 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/typeAliases/typeAliasWithTypeParameters.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/typeAliases/typeAliasWithTypeParameters.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] typeAliasWithTypeParameters.kt [ResolvedTo(RAW_FIR)] annotations container diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterBounds.kt b/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterBounds.kt index 019163b080f..e6b3a029f27 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterBounds.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterBounds.kt @@ -1,4 +1,4 @@ -fun resolveMe(foo: Foo) { +fun resolveMe(foo: Foo) { foo.util() } diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterBounds.txt b/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterBounds.txt index af3551f8b78..9d896186ddb 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterBounds.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterBounds.txt @@ -1,4 +1,3 @@ - RAW_FIR: FILE: [ResolvedTo(RAW_FIR)] typeParameterBounds.kt [ResolvedTo(RAW_FIR)] annotations container diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterOfNonLocalFunction.kt b/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterOfNonLocalFunction.kt index e8edffca1ff..ad535bcdc90 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterOfNonLocalFunction.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterOfNonLocalFunction.kt @@ -1,3 +1,3 @@ class X { - fun ddd() {} + fun dddMe>() {} } \ No newline at end of file diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterOfNonLocalFunction.txt b/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterOfNonLocalFunction.txt index a1c279079f5..e07f5a26de4 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterOfNonLocalFunction.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterOfNonLocalFunction.txt @@ -1,73 +1,78 @@ - RAW_FIR: -FILE: [ResolvedTo(RAW_FIR)] typeParameterOfNonLocalFunction.kt +FILE: [ResolvedTo(IMPORTS)] typeParameterOfNonLocalFunction.kt [ResolvedTo(RAW_FIR)] annotations container - public? final? [ResolvedTo(RAW_FIR)] class X : R|kotlin/Any| { - public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=X] constructor(): R|X| { + public final [ResolvedTo(STATUS)] class X : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=X] constructor(): R|X| { LAZY_super } - public? final? [ResolvedTo(RAW_FIR)] fun <[ResolvedTo(RAW_FIR)] resolveMe> ddd(): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] fun <[ResolvedTo(BODY_RESOLVE)] resolveMe> ddd(): R|kotlin/Unit| { + } } IMPORTS: FILE: [ResolvedTo(IMPORTS)] typeParameterOfNonLocalFunction.kt [ResolvedTo(RAW_FIR)] annotations container - public? final? [ResolvedTo(RAW_FIR)] class X : R|kotlin/Any| { - public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=X] constructor(): R|X| { + public final [ResolvedTo(STATUS)] class X : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=X] constructor(): R|X| { LAZY_super } - public? final? [ResolvedTo(RAW_FIR)] fun <[ResolvedTo(RAW_FIR)] resolveMe> ddd(): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] fun <[ResolvedTo(BODY_RESOLVE)] resolveMe> ddd(): R|kotlin/Unit| { + } } COMPILER_REQUIRED_ANNOTATIONS: FILE: [ResolvedTo(IMPORTS)] typeParameterOfNonLocalFunction.kt [ResolvedTo(RAW_FIR)] annotations container - public? final? [ResolvedTo(RAW_FIR)] class X : R|kotlin/Any| { - public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=X] constructor(): R|X| { + public final [ResolvedTo(STATUS)] class X : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=X] constructor(): R|X| { LAZY_super } - public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] fun <[ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] resolveMe> ddd(): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] fun <[ResolvedTo(BODY_RESOLVE)] resolveMe> ddd(): R|kotlin/Unit| { + } } COMPANION_GENERATION: FILE: [ResolvedTo(IMPORTS)] typeParameterOfNonLocalFunction.kt [ResolvedTo(RAW_FIR)] annotations container - public? final? [ResolvedTo(RAW_FIR)] class X : R|kotlin/Any| { - public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=X] constructor(): R|X| { + public final [ResolvedTo(STATUS)] class X : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=X] constructor(): R|X| { LAZY_super } - public? final? [ResolvedTo(COMPANION_GENERATION)] fun <[ResolvedTo(COMPANION_GENERATION)] resolveMe> ddd(): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] fun <[ResolvedTo(BODY_RESOLVE)] resolveMe> ddd(): R|kotlin/Unit| { + } } SUPER_TYPES: FILE: [ResolvedTo(IMPORTS)] typeParameterOfNonLocalFunction.kt [ResolvedTo(RAW_FIR)] annotations container - public? final? [ResolvedTo(SUPER_TYPES)] class X : R|kotlin/Any| { - public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=X] constructor(): R|X| { + public final [ResolvedTo(STATUS)] class X : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=X] constructor(): R|X| { LAZY_super } - public? final? [ResolvedTo(SUPER_TYPES)] fun <[ResolvedTo(SUPER_TYPES)] resolveMe> ddd(): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] fun <[ResolvedTo(BODY_RESOLVE)] resolveMe> ddd(): R|kotlin/Unit| { + } } TYPES: FILE: [ResolvedTo(IMPORTS)] typeParameterOfNonLocalFunction.kt [ResolvedTo(RAW_FIR)] annotations container - public? final? [ResolvedTo(TYPES)] class X : R|kotlin/Any| { - public? [ResolvedTo(TYPES)] [ContainingClassKey=X] constructor(): R|X| { + public final [ResolvedTo(STATUS)] class X : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=X] constructor(): R|X| { LAZY_super } - public? final? [ResolvedTo(TYPES)] fun <[ResolvedTo(TYPES)] resolveMe> ddd(): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] fun <[ResolvedTo(BODY_RESOLVE)] resolveMe> ddd(): R|kotlin/Unit| { + } } @@ -79,7 +84,8 @@ FILE: [ResolvedTo(IMPORTS)] typeParameterOfNonLocalFunction.kt LAZY_super } - public final [ResolvedTo(STATUS)] fun <[ResolvedTo(STATUS)] resolveMe> ddd(): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] fun <[ResolvedTo(BODY_RESOLVE)] resolveMe> ddd(): R|kotlin/Unit| { + } } @@ -91,7 +97,8 @@ FILE: [ResolvedTo(IMPORTS)] typeParameterOfNonLocalFunction.kt LAZY_super } - public final [ResolvedTo(EXPECT_ACTUAL_MATCHING)] fun <[ResolvedTo(EXPECT_ACTUAL_MATCHING)] resolveMe> ddd(): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] fun <[ResolvedTo(BODY_RESOLVE)] resolveMe> ddd(): R|kotlin/Unit| { + } } @@ -103,7 +110,8 @@ FILE: [ResolvedTo(IMPORTS)] typeParameterOfNonLocalFunction.kt LAZY_super } - public final [ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] fun <[ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] resolveMe> ddd(): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] fun <[ResolvedTo(BODY_RESOLVE)] resolveMe> ddd(): R|kotlin/Unit| { + } } @@ -115,7 +123,7 @@ FILE: [ResolvedTo(IMPORTS)] typeParameterOfNonLocalFunction.kt LAZY_super } - public final [ResolvedTo(CONTRACTS)] fun <[ResolvedTo(CONTRACTS)] resolveMe> ddd(): R|kotlin/Unit| { + public final [ResolvedTo(BODY_RESOLVE)] fun <[ResolvedTo(BODY_RESOLVE)] resolveMe> ddd(): R|kotlin/Unit| { } } @@ -128,7 +136,7 @@ FILE: [ResolvedTo(IMPORTS)] typeParameterOfNonLocalFunction.kt LAZY_super } - public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] fun <[ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] resolveMe> ddd(): R|kotlin/Unit| { + public final [ResolvedTo(BODY_RESOLVE)] fun <[ResolvedTo(BODY_RESOLVE)] resolveMe> ddd(): R|kotlin/Unit| { } } @@ -141,7 +149,7 @@ FILE: [ResolvedTo(IMPORTS)] typeParameterOfNonLocalFunction.kt LAZY_super } - public final [ResolvedTo(ANNOTATIONS_ARGUMENTS_MAPPING)] fun <[ResolvedTo(ANNOTATIONS_ARGUMENTS_MAPPING)] resolveMe> ddd(): R|kotlin/Unit| { + public final [ResolvedTo(BODY_RESOLVE)] fun <[ResolvedTo(BODY_RESOLVE)] resolveMe> ddd(): R|kotlin/Unit| { } } diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterOfTopFunction.kt b/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterOfTopFunction.kt index 3ce74970cd3..2c96ea8b625 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterOfTopFunction.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterOfTopFunction.kt @@ -1 +1 @@ -fun ddd() {} \ No newline at end of file +fun dddMe>() {} \ No newline at end of file diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterOfTopFunction.txt b/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterOfTopFunction.txt index 32cfde754a3..de1c99a27b2 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterOfTopFunction.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterOfTopFunction.txt @@ -1,65 +1,73 @@ - RAW_FIR: -FILE: [ResolvedTo(RAW_FIR)] typeParameterOfTopFunction.kt +FILE: [ResolvedTo(IMPORTS)] typeParameterOfTopFunction.kt [ResolvedTo(RAW_FIR)] annotations container - public? final? [ResolvedTo(RAW_FIR)] fun <[ResolvedTo(RAW_FIR)] resolveMe> ddd(): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] fun <[ResolvedTo(BODY_RESOLVE)] resolveMe> ddd(): R|kotlin/Unit| { + } IMPORTS: FILE: [ResolvedTo(IMPORTS)] typeParameterOfTopFunction.kt [ResolvedTo(RAW_FIR)] annotations container - public? final? [ResolvedTo(RAW_FIR)] fun <[ResolvedTo(RAW_FIR)] resolveMe> ddd(): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] fun <[ResolvedTo(BODY_RESOLVE)] resolveMe> ddd(): R|kotlin/Unit| { + } COMPILER_REQUIRED_ANNOTATIONS: FILE: [ResolvedTo(IMPORTS)] typeParameterOfTopFunction.kt [ResolvedTo(RAW_FIR)] annotations container - public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] fun <[ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] resolveMe> ddd(): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] fun <[ResolvedTo(BODY_RESOLVE)] resolveMe> ddd(): R|kotlin/Unit| { + } COMPANION_GENERATION: FILE: [ResolvedTo(IMPORTS)] typeParameterOfTopFunction.kt [ResolvedTo(RAW_FIR)] annotations container - public? final? [ResolvedTo(COMPANION_GENERATION)] fun <[ResolvedTo(COMPANION_GENERATION)] resolveMe> ddd(): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] fun <[ResolvedTo(BODY_RESOLVE)] resolveMe> ddd(): R|kotlin/Unit| { + } SUPER_TYPES: FILE: [ResolvedTo(IMPORTS)] typeParameterOfTopFunction.kt [ResolvedTo(RAW_FIR)] annotations container - public? final? [ResolvedTo(SUPER_TYPES)] fun <[ResolvedTo(SUPER_TYPES)] resolveMe> ddd(): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] fun <[ResolvedTo(BODY_RESOLVE)] resolveMe> ddd(): R|kotlin/Unit| { + } TYPES: FILE: [ResolvedTo(IMPORTS)] typeParameterOfTopFunction.kt [ResolvedTo(RAW_FIR)] annotations container - public? final? [ResolvedTo(TYPES)] fun <[ResolvedTo(TYPES)] resolveMe> ddd(): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] fun <[ResolvedTo(BODY_RESOLVE)] resolveMe> ddd(): R|kotlin/Unit| { + } STATUS: FILE: [ResolvedTo(IMPORTS)] typeParameterOfTopFunction.kt [ResolvedTo(RAW_FIR)] annotations container - public final [ResolvedTo(STATUS)] fun <[ResolvedTo(STATUS)] resolveMe> ddd(): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] fun <[ResolvedTo(BODY_RESOLVE)] resolveMe> ddd(): R|kotlin/Unit| { + } EXPECT_ACTUAL_MATCHING: FILE: [ResolvedTo(IMPORTS)] typeParameterOfTopFunction.kt [ResolvedTo(RAW_FIR)] annotations container - public final [ResolvedTo(EXPECT_ACTUAL_MATCHING)] fun <[ResolvedTo(EXPECT_ACTUAL_MATCHING)] resolveMe> ddd(): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] fun <[ResolvedTo(BODY_RESOLVE)] resolveMe> ddd(): R|kotlin/Unit| { + } ARGUMENTS_OF_ANNOTATIONS: FILE: [ResolvedTo(IMPORTS)] typeParameterOfTopFunction.kt [ResolvedTo(RAW_FIR)] annotations container - public final [ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] fun <[ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] resolveMe> ddd(): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] fun <[ResolvedTo(BODY_RESOLVE)] resolveMe> ddd(): R|kotlin/Unit| { + } CONTRACTS: FILE: [ResolvedTo(IMPORTS)] typeParameterOfTopFunction.kt [ResolvedTo(RAW_FIR)] annotations container - public final [ResolvedTo(CONTRACTS)] fun <[ResolvedTo(CONTRACTS)] resolveMe> ddd(): R|kotlin/Unit| { + public final [ResolvedTo(BODY_RESOLVE)] fun <[ResolvedTo(BODY_RESOLVE)] resolveMe> ddd(): R|kotlin/Unit| { } IMPLICIT_TYPES_BODY_RESOLVE: FILE: [ResolvedTo(IMPORTS)] typeParameterOfTopFunction.kt [ResolvedTo(RAW_FIR)] annotations container - public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] fun <[ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] resolveMe> ddd(): R|kotlin/Unit| { + public final [ResolvedTo(BODY_RESOLVE)] fun <[ResolvedTo(BODY_RESOLVE)] resolveMe> ddd(): R|kotlin/Unit| { } ANNOTATIONS_ARGUMENTS_MAPPING: FILE: [ResolvedTo(IMPORTS)] typeParameterOfTopFunction.kt [ResolvedTo(RAW_FIR)] annotations container - public final [ResolvedTo(ANNOTATIONS_ARGUMENTS_MAPPING)] fun <[ResolvedTo(ANNOTATIONS_ARGUMENTS_MAPPING)] resolveMe> ddd(): R|kotlin/Unit| { + public final [ResolvedTo(BODY_RESOLVE)] fun <[ResolvedTo(BODY_RESOLVE)] resolveMe> ddd(): R|kotlin/Unit| { } BODY_RESOLVE: diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterOfTopSetter.kt b/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterOfTopSetter.kt index 653a264eda3..d546eefc08b 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterOfTopSetter.kt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterOfTopSetter.kt @@ -1,2 +1,2 @@ var x: Int = 2 - set(resolveMe) = Unit \ No newline at end of file + set(resolveMe) = Unit \ No newline at end of file diff --git a/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterOfTopSetter.txt b/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterOfTopSetter.txt index dec858a928b..b33da32a7d0 100644 --- a/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterOfTopSetter.txt +++ b/analysis/low-level-api-fir/testdata/lazyResolve/typeParameterOfTopSetter.txt @@ -1,92 +1,109 @@ - RAW_FIR: -FILE: [ResolvedTo(RAW_FIR)] typeParameterOfTopSetter.kt +FILE: [ResolvedTo(IMPORTS)] typeParameterOfTopSetter.kt [ResolvedTo(RAW_FIR)] annotations container - public? final? [ResolvedTo(RAW_FIR)] var x: Int = LAZY_EXPRESSION - public? [ResolvedTo(RAW_FIR)] get(): Int - public? [ResolvedTo(RAW_FIR)] set([ResolvedTo(RAW_FIR)] resolveMe: Int): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] var x: R|kotlin/Int| = Int(2) + public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] set([ResolvedTo(BODY_RESOLVE)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { + ^ Q|kotlin/Unit| + } IMPORTS: FILE: [ResolvedTo(IMPORTS)] typeParameterOfTopSetter.kt [ResolvedTo(RAW_FIR)] annotations container - public? final? [ResolvedTo(RAW_FIR)] var x: Int = LAZY_EXPRESSION - public? [ResolvedTo(RAW_FIR)] get(): Int - public? [ResolvedTo(RAW_FIR)] set([ResolvedTo(RAW_FIR)] resolveMe: Int): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] var x: R|kotlin/Int| = Int(2) + public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] set([ResolvedTo(BODY_RESOLVE)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { + ^ Q|kotlin/Unit| + } COMPILER_REQUIRED_ANNOTATIONS: FILE: [ResolvedTo(IMPORTS)] typeParameterOfTopSetter.kt [ResolvedTo(RAW_FIR)] annotations container - public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] var x: Int = LAZY_EXPRESSION - public? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] get(): Int - public? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] set([ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] resolveMe: Int): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] var x: R|kotlin/Int| = Int(2) + public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] set([ResolvedTo(BODY_RESOLVE)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { + ^ Q|kotlin/Unit| + } COMPANION_GENERATION: FILE: [ResolvedTo(IMPORTS)] typeParameterOfTopSetter.kt [ResolvedTo(RAW_FIR)] annotations container - public? final? [ResolvedTo(COMPANION_GENERATION)] var x: Int = LAZY_EXPRESSION - public? [ResolvedTo(COMPANION_GENERATION)] get(): Int - public? [ResolvedTo(COMPANION_GENERATION)] set([ResolvedTo(COMPANION_GENERATION)] resolveMe: Int): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] var x: R|kotlin/Int| = Int(2) + public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] set([ResolvedTo(BODY_RESOLVE)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { + ^ Q|kotlin/Unit| + } SUPER_TYPES: FILE: [ResolvedTo(IMPORTS)] typeParameterOfTopSetter.kt [ResolvedTo(RAW_FIR)] annotations container - public? final? [ResolvedTo(SUPER_TYPES)] var x: Int = LAZY_EXPRESSION - public? [ResolvedTo(SUPER_TYPES)] get(): Int - public? [ResolvedTo(SUPER_TYPES)] set([ResolvedTo(SUPER_TYPES)] resolveMe: Int): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] var x: R|kotlin/Int| = Int(2) + public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] set([ResolvedTo(BODY_RESOLVE)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { + ^ Q|kotlin/Unit| + } TYPES: FILE: [ResolvedTo(IMPORTS)] typeParameterOfTopSetter.kt [ResolvedTo(RAW_FIR)] annotations container - public? final? [ResolvedTo(TYPES)] var x: R|kotlin/Int| = LAZY_EXPRESSION - public? [ResolvedTo(TYPES)] get(): R|kotlin/Int| - public? [ResolvedTo(TYPES)] set([ResolvedTo(TYPES)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] var x: R|kotlin/Int| = Int(2) + public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] set([ResolvedTo(BODY_RESOLVE)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { + ^ Q|kotlin/Unit| + } STATUS: FILE: [ResolvedTo(IMPORTS)] typeParameterOfTopSetter.kt [ResolvedTo(RAW_FIR)] annotations container - public final [ResolvedTo(STATUS)] var x: R|kotlin/Int| = LAZY_EXPRESSION - public [ResolvedTo(STATUS)] get(): R|kotlin/Int| - public [ResolvedTo(STATUS)] set([ResolvedTo(STATUS)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] var x: R|kotlin/Int| = Int(2) + public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] set([ResolvedTo(BODY_RESOLVE)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { + ^ Q|kotlin/Unit| + } EXPECT_ACTUAL_MATCHING: FILE: [ResolvedTo(IMPORTS)] typeParameterOfTopSetter.kt [ResolvedTo(RAW_FIR)] annotations container - public final [ResolvedTo(EXPECT_ACTUAL_MATCHING)] var x: R|kotlin/Int| = LAZY_EXPRESSION - public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] get(): R|kotlin/Int| - public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] set([ResolvedTo(EXPECT_ACTUAL_MATCHING)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] var x: R|kotlin/Int| = Int(2) + public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] set([ResolvedTo(BODY_RESOLVE)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { + ^ Q|kotlin/Unit| + } ARGUMENTS_OF_ANNOTATIONS: FILE: [ResolvedTo(IMPORTS)] typeParameterOfTopSetter.kt [ResolvedTo(RAW_FIR)] annotations container - public final [ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] var x: R|kotlin/Int| = LAZY_EXPRESSION - public [ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] get(): R|kotlin/Int| - public [ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] set([ResolvedTo(ARGUMENTS_OF_ANNOTATIONS)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { LAZY_BLOCK } + public final [ResolvedTo(BODY_RESOLVE)] var x: R|kotlin/Int| = Int(2) + public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] set([ResolvedTo(BODY_RESOLVE)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { + ^ Q|kotlin/Unit| + } CONTRACTS: FILE: [ResolvedTo(IMPORTS)] typeParameterOfTopSetter.kt [ResolvedTo(RAW_FIR)] annotations container - public final [ResolvedTo(CONTRACTS)] var x: R|kotlin/Int| = IntegerLiteral(2) - public [ResolvedTo(CONTRACTS)] get(): R|kotlin/Int| - public [ResolvedTo(CONTRACTS)] set([ResolvedTo(CONTRACTS)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { - ^ Unit# + public final [ResolvedTo(BODY_RESOLVE)] var x: R|kotlin/Int| = Int(2) + public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] set([ResolvedTo(BODY_RESOLVE)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { + ^ Q|kotlin/Unit| } IMPLICIT_TYPES_BODY_RESOLVE: FILE: [ResolvedTo(IMPORTS)] typeParameterOfTopSetter.kt [ResolvedTo(RAW_FIR)] annotations container - public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] var x: R|kotlin/Int| = IntegerLiteral(2) - public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|kotlin/Int| - public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] set([ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { - ^ Unit# + public final [ResolvedTo(BODY_RESOLVE)] var x: R|kotlin/Int| = Int(2) + public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] set([ResolvedTo(BODY_RESOLVE)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { + ^ Q|kotlin/Unit| } ANNOTATIONS_ARGUMENTS_MAPPING: FILE: [ResolvedTo(IMPORTS)] typeParameterOfTopSetter.kt [ResolvedTo(RAW_FIR)] annotations container - public final [ResolvedTo(ANNOTATIONS_ARGUMENTS_MAPPING)] var x: R|kotlin/Int| = IntegerLiteral(2) - public [ResolvedTo(ANNOTATIONS_ARGUMENTS_MAPPING)] get(): R|kotlin/Int| - public [ResolvedTo(ANNOTATIONS_ARGUMENTS_MAPPING)] set([ResolvedTo(ANNOTATIONS_ARGUMENTS_MAPPING)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { - ^ Unit# + public final [ResolvedTo(BODY_RESOLVE)] var x: R|kotlin/Int| = Int(2) + public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] set([ResolvedTo(BODY_RESOLVE)] resolveMe: R|kotlin/Int|): R|kotlin/Unit| { + ^ Q|kotlin/Unit| } BODY_RESOLVE: diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/AbstractFirLazyDeclarationResolveTest.kt b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/AbstractFirLazyDeclarationResolveTest.kt index 8b4d57ef0f6..023f86ce042 100644 --- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/AbstractFirLazyDeclarationResolveTest.kt +++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/AbstractFirLazyDeclarationResolveTest.kt @@ -5,9 +5,11 @@ package org.jetbrains.kotlin.analysis.low.level.api.fir +import org.jetbrains.kotlin.analysis.low.level.api.fir.api.resolveToFirSymbol import org.jetbrains.kotlin.analysis.low.level.api.fir.test.base.AbstractLowLevelApiSingleFileTest import org.jetbrains.kotlin.analysis.low.level.api.fir.test.configurators.AnalysisApiFirOutOfContentRootTestConfigurator import org.jetbrains.kotlin.analysis.low.level.api.fir.test.configurators.AnalysisApiFirSourceTestConfigurator +import org.jetbrains.kotlin.analysis.test.framework.services.expressionMarkerProvider import org.jetbrains.kotlin.fir.FirElement import org.jetbrains.kotlin.fir.declarations.FirDeclaration import org.jetbrains.kotlin.fir.declarations.FirFile @@ -36,27 +38,6 @@ import org.junit.jupiter.api.parallel.ExecutionMode */ @Execution(ExecutionMode.SAME_THREAD) abstract class AbstractFirLazyDeclarationResolveTest : AbstractLowLevelApiSingleFileTest() { - - private fun FirFile.findResolveMe(): FirDeclaration { - val visitor = object : FirVisitorVoid() { - var result: FirDeclaration? = null - override fun visitElement(element: FirElement) { - if (result != null) return - if (element is FirDeclaration) { - val declaration = element.realPsi as? KtDeclaration - if (declaration != null && declaration.name?.decapitalizeAsciiOnly() == "resolveMe") { - result = element - return - } - } - element.acceptChildren(this) - } - - } - accept(visitor) - return visitor.result ?: error("declaration with name `resolveMe` was not found") - } - override fun doTestByFileStructure(ktFile: KtFile, moduleStructure: TestModuleStructure, testServices: TestServices) { val resultBuilder = StringBuilder() val renderer = FirRenderer( @@ -69,14 +50,19 @@ abstract class AbstractFirLazyDeclarationResolveTest : AbstractLowLevelApiSingle resolveWithClearCaches(ktFile) { firResolveSession -> check(firResolveSession.isSourceSession) - val declarationToResolve = firResolveSession - .getOrBuildFirFile(ktFile) - .findResolveMe() + val ktDeclaration = testServices.expressionMarkerProvider.getElementOfTypeAtCaret(ktFile) + val declarationToResolve = ktDeclaration.resolveToFirSymbol(firResolveSession) + for (currentPhase in FirResolvePhase.values()) { if (currentPhase == FirResolvePhase.SEALED_CLASS_INHERITORS) continue declarationToResolve.lazyResolveToPhase(currentPhase) + val firFile = firResolveSession.getOrBuildFirFile(ktFile) - resultBuilder.append("\n${currentPhase.name}:\n") + if (resultBuilder.isNotEmpty()) { + resultBuilder.appendLine() + } + + resultBuilder.append("${currentPhase.name}:\n") renderer.renderElementAsString(firFile) } } diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/FirOutOfContentRootLazyDeclarationResolveTestGenerated.java b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/FirOutOfContentRootLazyDeclarationResolveTestGenerated.java index 1a06f723994..76d1e16e69e 100644 --- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/FirOutOfContentRootLazyDeclarationResolveTestGenerated.java +++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/FirOutOfContentRootLazyDeclarationResolveTestGenerated.java @@ -96,6 +96,18 @@ public class FirOutOfContentRootLazyDeclarationResolveTestGenerated extends Abst runTest("analysis/low-level-api-fir/testdata/lazyResolve/parameterOfNonLocalSetter.kt"); } + @Test + @TestMetadata("primaryConstructorParameter.kt") + public void testPrimaryConstructorParameter() throws Exception { + runTest("analysis/low-level-api-fir/testdata/lazyResolve/primaryConstructorParameter.kt"); + } + + @Test + @TestMetadata("primaryConstructorProperty.kt") + public void testPrimaryConstructorProperty() throws Exception { + runTest("analysis/low-level-api-fir/testdata/lazyResolve/primaryConstructorProperty.kt"); + } + @Test @TestMetadata("propertyWithGetter.kt") public void testPropertyWithGetter() throws Exception { @@ -120,6 +132,12 @@ public class FirOutOfContentRootLazyDeclarationResolveTestGenerated extends Abst runTest("analysis/low-level-api-fir/testdata/lazyResolve/secondaryConstructor.kt"); } + @Test + @TestMetadata("secondaryConstructorParameter.kt") + public void testSecondaryConstructorParameter() throws Exception { + runTest("analysis/low-level-api-fir/testdata/lazyResolve/secondaryConstructorParameter.kt"); + } + @Test @TestMetadata("superTypes.kt") public void testSuperTypes() throws Exception { @@ -239,6 +257,12 @@ public class FirOutOfContentRootLazyDeclarationResolveTestGenerated extends Abst runTest("analysis/low-level-api-fir/testdata/lazyResolve/functions/functionCallWithGenericResult.kt"); } + @Test + @TestMetadata("functionParameter.kt") + public void testFunctionParameter() throws Exception { + runTest("analysis/low-level-api-fir/testdata/lazyResolve/functions/functionParameter.kt"); + } + @Test @TestMetadata("functionWithGenericExpectedTypeInside.kt") public void testFunctionWithGenericExpectedTypeInside() throws Exception { @@ -261,6 +285,30 @@ public class FirOutOfContentRootLazyDeclarationResolveTestGenerated extends Abst KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/low-level-api-fir/testdata/lazyResolve/properties"), Pattern.compile("^(.+)\\.kt$"), null, true); } + @Test + @TestMetadata("propertyGetterWithExplicitType.kt") + public void testPropertyGetterWithExplicitType() throws Exception { + runTest("analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyGetterWithExplicitType.kt"); + } + + @Test + @TestMetadata("propertyGetterWithExplicitTypeAndBody.kt") + public void testPropertyGetterWithExplicitTypeAndBody() throws Exception { + runTest("analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyGetterWithExplicitTypeAndBody.kt"); + } + + @Test + @TestMetadata("propertyGetterWithImplicitType.kt") + public void testPropertyGetterWithImplicitType() throws Exception { + runTest("analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyGetterWithImplicitType.kt"); + } + + @Test + @TestMetadata("propertySetter.kt") + public void testPropertySetter() throws Exception { + runTest("analysis/low-level-api-fir/testdata/lazyResolve/properties/propertySetter.kt"); + } + @Test @TestMetadata("propertyWithTypeParameters.kt") public void testPropertyWithTypeParameters() throws Exception { diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/FirSourceLazyDeclarationResolveTestGenerated.java b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/FirSourceLazyDeclarationResolveTestGenerated.java index 324a7c7c77b..4604c8e7914 100644 --- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/FirSourceLazyDeclarationResolveTestGenerated.java +++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/FirSourceLazyDeclarationResolveTestGenerated.java @@ -96,6 +96,18 @@ public class FirSourceLazyDeclarationResolveTestGenerated extends AbstractFirSou runTest("analysis/low-level-api-fir/testdata/lazyResolve/parameterOfNonLocalSetter.kt"); } + @Test + @TestMetadata("primaryConstructorParameter.kt") + public void testPrimaryConstructorParameter() throws Exception { + runTest("analysis/low-level-api-fir/testdata/lazyResolve/primaryConstructorParameter.kt"); + } + + @Test + @TestMetadata("primaryConstructorProperty.kt") + public void testPrimaryConstructorProperty() throws Exception { + runTest("analysis/low-level-api-fir/testdata/lazyResolve/primaryConstructorProperty.kt"); + } + @Test @TestMetadata("propertyWithGetter.kt") public void testPropertyWithGetter() throws Exception { @@ -120,6 +132,12 @@ public class FirSourceLazyDeclarationResolveTestGenerated extends AbstractFirSou runTest("analysis/low-level-api-fir/testdata/lazyResolve/secondaryConstructor.kt"); } + @Test + @TestMetadata("secondaryConstructorParameter.kt") + public void testSecondaryConstructorParameter() throws Exception { + runTest("analysis/low-level-api-fir/testdata/lazyResolve/secondaryConstructorParameter.kt"); + } + @Test @TestMetadata("superTypes.kt") public void testSuperTypes() throws Exception { @@ -239,6 +257,12 @@ public class FirSourceLazyDeclarationResolveTestGenerated extends AbstractFirSou runTest("analysis/low-level-api-fir/testdata/lazyResolve/functions/functionCallWithGenericResult.kt"); } + @Test + @TestMetadata("functionParameter.kt") + public void testFunctionParameter() throws Exception { + runTest("analysis/low-level-api-fir/testdata/lazyResolve/functions/functionParameter.kt"); + } + @Test @TestMetadata("functionWithGenericExpectedTypeInside.kt") public void testFunctionWithGenericExpectedTypeInside() throws Exception { @@ -261,6 +285,30 @@ public class FirSourceLazyDeclarationResolveTestGenerated extends AbstractFirSou KtTestUtil.assertAllTestsPresentByMetadataWithExcluded(this.getClass(), new File("analysis/low-level-api-fir/testdata/lazyResolve/properties"), Pattern.compile("^(.+)\\.kt$"), null, true); } + @Test + @TestMetadata("propertyGetterWithExplicitType.kt") + public void testPropertyGetterWithExplicitType() throws Exception { + runTest("analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyGetterWithExplicitType.kt"); + } + + @Test + @TestMetadata("propertyGetterWithExplicitTypeAndBody.kt") + public void testPropertyGetterWithExplicitTypeAndBody() throws Exception { + runTest("analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyGetterWithExplicitTypeAndBody.kt"); + } + + @Test + @TestMetadata("propertyGetterWithImplicitType.kt") + public void testPropertyGetterWithImplicitType() throws Exception { + runTest("analysis/low-level-api-fir/testdata/lazyResolve/properties/propertyGetterWithImplicitType.kt"); + } + + @Test + @TestMetadata("propertySetter.kt") + public void testPropertySetter() throws Exception { + runTest("analysis/low-level-api-fir/testdata/lazyResolve/properties/propertySetter.kt"); + } + @Test @TestMetadata("propertyWithTypeParameters.kt") public void testPropertyWithTypeParameters() throws Exception {