diff --git a/analysis/low-level-api-fir/testData/lazyResolve/properties/constructorParameter.kt b/analysis/low-level-api-fir/testData/lazyResolve/properties/constructorParameter.kt new file mode 100644 index 00000000000..fd11ebacc28 --- /dev/null +++ b/analysis/low-level-api-fir/testData/lazyResolve/properties/constructorParameter.kt @@ -0,0 +1,19 @@ +@Target(AnnotationTarget.FIELD) +annotation class FieldAnnotation(val i: Int) + +@Repeatable +annotation class Anno(val s: String) + +class Sub( + @FieldAnnotation(konstant) + @field:Anno("field$stringConstant") + @property:Anno("property$stringConstant") + @get:Anno("get$stringConstant") + @set:Anno("set$stringConstant") + @setparam:Anno("setparam$stringConstant") + @param:Anno("param$stringConstant") + var prop: Int, +) + +const val konstant = 0 +const val stringConstant = "str ${1}" \ No newline at end of file diff --git a/analysis/low-level-api-fir/testData/lazyResolve/properties/constructorParameter.txt b/analysis/low-level-api-fir/testData/lazyResolve/properties/constructorParameter.txt new file mode 100644 index 00000000000..36b608f86a6 --- /dev/null +++ b/analysis/low-level-api-fir/testData/lazyResolve/properties/constructorParameter.txt @@ -0,0 +1,454 @@ +RAW_FIR: +FILE: [ResolvedTo(RAW_FIR)] constructorParameter.kt + @Target[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] annotation class FieldAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/FieldAnnotation.i] i: Int): R|FieldAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] get(): Int + + } + @Repeatable[Unresolved]() public? final? [ResolvedTo(RAW_FIR)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Anno.s] s: String): R|Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val s: String = R|/s| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): String + + } + public? final? [ResolvedTo(RAW_FIR)] class Sub : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Sub.prop] @FieldAnnotation[Unresolved](LAZY_EXPRESSION) @CONSTRUCTOR_PARAMETER:Anno[Unresolved](LAZY_EXPRESSION) prop: Int): R|Sub| { + LAZY_super + } + + @FieldAnnotation[Unresolved](LAZY_EXPRESSION) @PROPERTY:Anno[Unresolved](LAZY_EXPRESSION) field:@FIELD:Anno[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] var prop: Int = R|/prop| + @PROPERTY_GETTER:Anno[Unresolved](LAZY_EXPRESSION) public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] get(): Int + @PROPERTY_SETTER:Anno[Unresolved](LAZY_EXPRESSION) public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] set([ResolvedTo(RAW_FIR)] @SETTER_PARAMETER:Anno[Unresolved](LAZY_EXPRESSION) value: Int): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? const [ResolvedTo(RAW_FIR)] val stringConstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +IMPORTS: +FILE: [ResolvedTo(IMPORTS)] constructorParameter.kt + @Target[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] annotation class FieldAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/FieldAnnotation.i] i: Int): R|FieldAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] get(): Int + + } + @Repeatable[Unresolved]() public? final? [ResolvedTo(RAW_FIR)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Anno.s] s: String): R|Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val s: String = R|/s| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): String + + } + public? final? [ResolvedTo(RAW_FIR)] class Sub : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Sub.prop] @FieldAnnotation[Unresolved](LAZY_EXPRESSION) @CONSTRUCTOR_PARAMETER:Anno[Unresolved](LAZY_EXPRESSION) prop: Int): R|Sub| { + LAZY_super + } + + @FieldAnnotation[Unresolved](LAZY_EXPRESSION) @PROPERTY:Anno[Unresolved](LAZY_EXPRESSION) field:@FIELD:Anno[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] var prop: Int = R|/prop| + @PROPERTY_GETTER:Anno[Unresolved](LAZY_EXPRESSION) public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] get(): Int + @PROPERTY_SETTER:Anno[Unresolved](LAZY_EXPRESSION) public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] set([ResolvedTo(RAW_FIR)] @SETTER_PARAMETER:Anno[Unresolved](LAZY_EXPRESSION) value: Int): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? const [ResolvedTo(RAW_FIR)] val stringConstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +COMPILER_REQUIRED_ANNOTATIONS: +FILE: [ResolvedTo(IMPORTS)] constructorParameter.kt + @Target[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] annotation class FieldAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/FieldAnnotation.i] i: Int): R|FieldAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] get(): Int + + } + @Repeatable[Unresolved]() public? final? [ResolvedTo(RAW_FIR)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Anno.s] s: String): R|Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val s: String = R|/s| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): String + + } + public? final? [ResolvedTo(RAW_FIR)] class Sub : R|kotlin/Any| { + public? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] [ContainingClassKey=Sub] constructor([ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] [CorrespondingProperty=/Sub.prop] @FieldAnnotation[Unresolved](LAZY_EXPRESSION) @CONSTRUCTOR_PARAMETER:Anno[Unresolved](LAZY_EXPRESSION) prop: Int): R|Sub| { + LAZY_super + } + + @FieldAnnotation[Unresolved](LAZY_EXPRESSION) @PROPERTY:Anno[Unresolved](LAZY_EXPRESSION) field:@FIELD:Anno[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] var prop: Int = R|/prop| + @PROPERTY_GETTER:Anno[Unresolved](LAZY_EXPRESSION) public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] get(): Int + @PROPERTY_SETTER:Anno[Unresolved](LAZY_EXPRESSION) public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] set([ResolvedTo(RAW_FIR)] @SETTER_PARAMETER:Anno[Unresolved](LAZY_EXPRESSION) value: Int): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? const [ResolvedTo(RAW_FIR)] val stringConstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +COMPANION_GENERATION: +FILE: [ResolvedTo(IMPORTS)] constructorParameter.kt + @Target[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] annotation class FieldAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/FieldAnnotation.i] i: Int): R|FieldAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] get(): Int + + } + @Repeatable[Unresolved]() public? final? [ResolvedTo(RAW_FIR)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Anno.s] s: String): R|Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val s: String = R|/s| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): String + + } + public? final? [ResolvedTo(RAW_FIR)] class Sub : R|kotlin/Any| { + public? [ResolvedTo(COMPANION_GENERATION)] [ContainingClassKey=Sub] constructor([ResolvedTo(COMPANION_GENERATION)] [CorrespondingProperty=/Sub.prop] @FieldAnnotation[Unresolved](LAZY_EXPRESSION) @CONSTRUCTOR_PARAMETER:Anno[Unresolved](LAZY_EXPRESSION) prop: Int): R|Sub| { + LAZY_super + } + + @FieldAnnotation[Unresolved](LAZY_EXPRESSION) @PROPERTY:Anno[Unresolved](LAZY_EXPRESSION) field:@FIELD:Anno[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] var prop: Int = R|/prop| + @PROPERTY_GETTER:Anno[Unresolved](LAZY_EXPRESSION) public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] get(): Int + @PROPERTY_SETTER:Anno[Unresolved](LAZY_EXPRESSION) public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] set([ResolvedTo(RAW_FIR)] @SETTER_PARAMETER:Anno[Unresolved](LAZY_EXPRESSION) value: Int): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? const [ResolvedTo(RAW_FIR)] val stringConstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +SUPER_TYPES: +FILE: [ResolvedTo(IMPORTS)] constructorParameter.kt + @Target[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] annotation class FieldAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/FieldAnnotation.i] i: Int): R|FieldAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] get(): Int + + } + @Repeatable[Unresolved]() public? final? [ResolvedTo(RAW_FIR)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Anno.s] s: String): R|Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val s: String = R|/s| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): String + + } + public? final? [ResolvedTo(SUPER_TYPES)] class Sub : R|kotlin/Any| { + public? [ResolvedTo(SUPER_TYPES)] [ContainingClassKey=Sub] constructor([ResolvedTo(SUPER_TYPES)] [CorrespondingProperty=/Sub.prop] @FieldAnnotation[Unresolved](LAZY_EXPRESSION) @CONSTRUCTOR_PARAMETER:Anno[Unresolved](LAZY_EXPRESSION) prop: Int): R|Sub| { + LAZY_super + } + + @FieldAnnotation[Unresolved](LAZY_EXPRESSION) @PROPERTY:Anno[Unresolved](LAZY_EXPRESSION) field:@FIELD:Anno[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] var prop: Int = R|/prop| + @PROPERTY_GETTER:Anno[Unresolved](LAZY_EXPRESSION) public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] get(): Int + @PROPERTY_SETTER:Anno[Unresolved](LAZY_EXPRESSION) public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] set([ResolvedTo(RAW_FIR)] @SETTER_PARAMETER:Anno[Unresolved](LAZY_EXPRESSION) value: Int): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? const [ResolvedTo(RAW_FIR)] val stringConstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +TYPES: +FILE: [ResolvedTo(IMPORTS)] constructorParameter.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.FIELD|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class FieldAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/FieldAnnotation.i] i: Int): R|FieldAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] get(): Int + + } + @Repeatable[Unresolved]() public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Anno.s] s: String): R|Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val s: String = R|/s| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): String + + } + public? final? [ResolvedTo(TYPES)] class Sub : R|kotlin/Any| { + public? [ResolvedTo(TYPES)] [ContainingClassKey=Sub] constructor([ResolvedTo(TYPES)] [CorrespondingProperty=/Sub.prop] @CONSTRUCTOR_PARAMETER:R|Anno|[Types](LAZY_EXPRESSION) prop: R|kotlin/Int|): R|Sub| { + LAZY_super + } + + @FieldAnnotation[Unresolved](LAZY_EXPRESSION) @PROPERTY:Anno[Unresolved](LAZY_EXPRESSION) field:@FIELD:Anno[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] var prop: Int = R|/prop| + @PROPERTY_GETTER:Anno[Unresolved](LAZY_EXPRESSION) public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] get(): Int + @PROPERTY_SETTER:Anno[Unresolved](LAZY_EXPRESSION) public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] set([ResolvedTo(RAW_FIR)] @SETTER_PARAMETER:Anno[Unresolved](LAZY_EXPRESSION) value: Int): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? const [ResolvedTo(RAW_FIR)] val stringConstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +STATUS: +FILE: [ResolvedTo(IMPORTS)] constructorParameter.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.FIELD|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class FieldAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/FieldAnnotation.i] i: Int): R|FieldAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] get(): Int + + } + @Repeatable[Unresolved]() public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Anno.s] s: String): R|Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val s: String = R|/s| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): String + + } + public final [ResolvedTo(STATUS)] class Sub : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/Sub.prop] @CONSTRUCTOR_PARAMETER:R|Anno|[Types](LAZY_EXPRESSION) prop: R|kotlin/Int|): R|Sub| { + LAZY_super + } + + @PROPERTY:R|Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|Anno|[Types](LAZY_EXPRESSION) @R|FieldAnnotation|[Types](LAZY_EXPRESSION) public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + @PROPERTY_GETTER:R|Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + @PROPERTY_SETTER:R|Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] set([ResolvedTo(STATUS)] @SETTER_PARAMETER:R|Anno|[Types](LAZY_EXPRESSION) value: R|kotlin/Int|): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? const [ResolvedTo(RAW_FIR)] val stringConstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +EXPECT_ACTUAL_MATCHING: +FILE: [ResolvedTo(IMPORTS)] constructorParameter.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.FIELD|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class FieldAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/FieldAnnotation.i] i: Int): R|FieldAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] get(): Int + + } + @Repeatable[Unresolved]() public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Anno.s] s: String): R|Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val s: String = R|/s| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): String + + } + public final [ResolvedTo(STATUS)] class Sub : R|kotlin/Any| { + public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=Sub] constructor([ResolvedTo(EXPECT_ACTUAL_MATCHING)] [CorrespondingProperty=/Sub.prop] @CONSTRUCTOR_PARAMETER:R|Anno|[Types](LAZY_EXPRESSION) prop: R|kotlin/Int|): R|Sub| { + LAZY_super + } + + @PROPERTY:R|Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|Anno|[Types](LAZY_EXPRESSION) @R|FieldAnnotation|[Types](LAZY_EXPRESSION) public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + @PROPERTY_GETTER:R|Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + @PROPERTY_SETTER:R|Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] set([ResolvedTo(STATUS)] @SETTER_PARAMETER:R|Anno|[Types](LAZY_EXPRESSION) value: R|kotlin/Int|): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? const [ResolvedTo(RAW_FIR)] val stringConstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +CONTRACTS: +FILE: [ResolvedTo(IMPORTS)] constructorParameter.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.FIELD|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class FieldAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/FieldAnnotation.i] i: Int): R|FieldAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] get(): Int + + } + @Repeatable[Unresolved]() public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Anno.s] s: String): R|Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val s: String = R|/s| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): String + + } + public final [ResolvedTo(STATUS)] class Sub : R|kotlin/Any| { + public [ResolvedTo(CONTRACTS)] [ContainingClassKey=Sub] constructor([ResolvedTo(CONTRACTS)] [CorrespondingProperty=/Sub.prop] @CONSTRUCTOR_PARAMETER:R|Anno|[Types](LAZY_EXPRESSION) prop: R|kotlin/Int|): R|Sub| { + LAZY_super + } + + @PROPERTY:R|Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|Anno|[Types](LAZY_EXPRESSION) @R|FieldAnnotation|[Types](LAZY_EXPRESSION) public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + @PROPERTY_GETTER:R|Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + @PROPERTY_SETTER:R|Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] set([ResolvedTo(STATUS)] @SETTER_PARAMETER:R|Anno|[Types](LAZY_EXPRESSION) value: R|kotlin/Int|): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? const [ResolvedTo(RAW_FIR)] val stringConstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +IMPLICIT_TYPES_BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] constructorParameter.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.FIELD|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class FieldAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/FieldAnnotation.i] i: Int): R|FieldAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] get(): Int + + } + @Repeatable[Unresolved]() public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Anno.s] s: String): R|Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val s: String = R|/s| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): String + + } + public final [ResolvedTo(STATUS)] class Sub : R|kotlin/Any| { + public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=Sub] constructor([ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [CorrespondingProperty=/Sub.prop] @CONSTRUCTOR_PARAMETER:R|Anno|[Types](LAZY_EXPRESSION) prop: R|kotlin/Int|): R|Sub| { + LAZY_super + } + + @PROPERTY:R|Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|Anno|[Types](LAZY_EXPRESSION) @R|FieldAnnotation|[Types](LAZY_EXPRESSION) public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + @PROPERTY_GETTER:R|Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + @PROPERTY_SETTER:R|Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] set([ResolvedTo(STATUS)] @SETTER_PARAMETER:R|Anno|[Types](LAZY_EXPRESSION) value: R|kotlin/Int|): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? const [ResolvedTo(RAW_FIR)] val stringConstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +ANNOTATION_ARGUMENTS: +FILE: [ResolvedTo(IMPORTS)] constructorParameter.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.FIELD|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class FieldAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/FieldAnnotation.i] i: Int): R|FieldAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] get(): Int + + } + @R|kotlin/annotation/Repeatable|[Types]() public final [ResolvedTo(STATUS)] annotation class Anno : R|kotlin/Annotation| { + public [ResolvedTo(STATUS)] [ContainingClassKey=Anno] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/Anno.s] s: R|kotlin/String|): R|Anno| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val s: R|kotlin/String| = R|/s| + public [ResolvedTo(STATUS)] [ContainingClassKey=Anno] get(): R|kotlin/String| + + } + public final [ResolvedTo(STATUS)] class Sub : R|kotlin/Any| { + public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=Sub] constructor([ResolvedTo(ANNOTATION_ARGUMENTS)] [CorrespondingProperty=/Sub.prop] @CONSTRUCTOR_PARAMETER:R|Anno|[Types](s = (String(param), R|/stringConstant|)) prop: R|kotlin/Int|): R|Sub| { + LAZY_super + } + + @PROPERTY:R|Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|Anno|[Types](LAZY_EXPRESSION) @R|FieldAnnotation|[Types](LAZY_EXPRESSION) public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + @PROPERTY_GETTER:R|Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + @PROPERTY_SETTER:R|Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] set([ResolvedTo(STATUS)] @SETTER_PARAMETER:R|Anno|[Types](LAZY_EXPRESSION) value: R|kotlin/Int|): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public final const [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val stringConstant: R|kotlin/String| = (String(str ), Int(1)) + public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|kotlin/String| + +BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] constructorParameter.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.FIELD|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class FieldAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/FieldAnnotation.i] i: Int): R|FieldAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] get(): Int + + } + @R|kotlin/annotation/Repeatable|[Types]() public final [ResolvedTo(STATUS)] annotation class Anno : R|kotlin/Annotation| { + public [ResolvedTo(STATUS)] [ContainingClassKey=Anno] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/Anno.s] s: R|kotlin/String|): R|Anno| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val s: R|kotlin/String| = R|/s| + public [ResolvedTo(STATUS)] [ContainingClassKey=Anno] get(): R|kotlin/String| + + } + public final [ResolvedTo(STATUS)] class Sub : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Sub] constructor([ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=/Sub.prop] @CONSTRUCTOR_PARAMETER:R|Anno|[Types](s = (String(param), R|/stringConstant|)) prop: R|kotlin/Int|): R|Sub| { + super() + } + + @PROPERTY:R|Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|Anno|[Types](LAZY_EXPRESSION) @R|FieldAnnotation|[Types](LAZY_EXPRESSION) public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + @PROPERTY_GETTER:R|Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + @PROPERTY_SETTER:R|Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] set([ResolvedTo(STATUS)] @SETTER_PARAMETER:R|Anno|[Types](LAZY_EXPRESSION) value: R|kotlin/Int|): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public final const [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val stringConstant: R|kotlin/String| = (String(str ), Int(1)) + public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|kotlin/String| + +FILE RAW TO BODY: +FILE: [ResolvedTo(BODY_RESOLVE)] constructorParameter.kt + @R|kotlin/annotation/Target|[Types](allowedTargets = vararg(Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.FIELD|)) public final [ResolvedTo(BODY_RESOLVE)] annotation class FieldAnnotation : R|kotlin/Annotation| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=FieldAnnotation] constructor([ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=/FieldAnnotation.i] i: R|kotlin/Int|): R|FieldAnnotation| { + super() + } + + public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] val i: R|kotlin/Int| = R|/i| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=FieldAnnotation] get(): R|kotlin/Int| + + } + @R|kotlin/annotation/Repeatable|[Types]() public final [ResolvedTo(BODY_RESOLVE)] annotation class Anno : R|kotlin/Annotation| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Anno] constructor([ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=/Anno.s] s: R|kotlin/String|): R|Anno| { + super() + } + + public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] val s: R|kotlin/String| = R|/s| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Anno] get(): R|kotlin/String| + + } + public final [ResolvedTo(BODY_RESOLVE)] class Sub : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Sub] constructor([ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=/Sub.prop] @CONSTRUCTOR_PARAMETER:R|Anno|[Types](s = (String(param), R|/stringConstant|)) prop: R|kotlin/Int|): R|Sub| { + super() + } + + @PROPERTY:R|Anno|[Types](s = (String(property), R|/stringConstant|)) field:@FIELD:R|Anno|[Types](s = (String(field), R|/stringConstant|)) @R|FieldAnnotation|[Types](i = R|/konstant|) public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + @PROPERTY_GETTER:R|Anno|[Types](s = (String(get), R|/stringConstant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + @PROPERTY_SETTER:R|Anno|[Types](s = (String(set), R|/stringConstant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Sub] set([ResolvedTo(BODY_RESOLVE)] @SETTER_PARAMETER:R|Anno|[Types](s = (String(setparam), R|/stringConstant|)) value: R|kotlin/Int|): R|kotlin/Unit| + + } + public final const [ResolvedTo(BODY_RESOLVE)] val konstant: R|kotlin/Int| = Int(0) + public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int| + public final const [ResolvedTo(BODY_RESOLVE)] val stringConstant: R|kotlin/String| = (String(str ), Int(1)) + public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/String| diff --git a/analysis/low-level-api-fir/testData/lazyResolve/properties/constructorParameterWithImplicitParameterAnnotation.kt b/analysis/low-level-api-fir/testData/lazyResolve/properties/constructorParameterWithImplicitParameterAnnotation.kt new file mode 100644 index 00000000000..00437bbfa24 --- /dev/null +++ b/analysis/low-level-api-fir/testData/lazyResolve/properties/constructorParameterWithImplicitParameterAnnotation.kt @@ -0,0 +1,9 @@ +@Target(AnnotationTarget.VALUE_PARAMETER) +annotation class ParameterAnnotation(val i: Int) + +class Sub( + @ParameterAnnotation(konstant) + var prop: Int, +) + +const val konstant = 0 \ No newline at end of file diff --git a/analysis/low-level-api-fir/testData/lazyResolve/properties/constructorParameterWithImplicitParameterAnnotation.txt b/analysis/low-level-api-fir/testData/lazyResolve/properties/constructorParameterWithImplicitParameterAnnotation.txt new file mode 100644 index 00000000000..f56ca2c2390 --- /dev/null +++ b/analysis/low-level-api-fir/testData/lazyResolve/properties/constructorParameterWithImplicitParameterAnnotation.txt @@ -0,0 +1,311 @@ +RAW_FIR: +FILE: [ResolvedTo(RAW_FIR)] constructorParameterWithImplicitParameterAnnotation.kt + @Target[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] annotation class ParameterAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/ParameterAnnotation.i] i: Int): R|ParameterAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] get(): Int + + } + public? final? [ResolvedTo(RAW_FIR)] class Sub : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Sub.prop] @ParameterAnnotation[Unresolved](LAZY_EXPRESSION) prop: Int): R|Sub| { + LAZY_super + } + + @ParameterAnnotation[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] var prop: Int = R|/prop| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] get(): Int + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] set([ResolvedTo(RAW_FIR)] value: Int): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +IMPORTS: +FILE: [ResolvedTo(IMPORTS)] constructorParameterWithImplicitParameterAnnotation.kt + @Target[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] annotation class ParameterAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/ParameterAnnotation.i] i: Int): R|ParameterAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] get(): Int + + } + public? final? [ResolvedTo(RAW_FIR)] class Sub : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Sub.prop] @ParameterAnnotation[Unresolved](LAZY_EXPRESSION) prop: Int): R|Sub| { + LAZY_super + } + + @ParameterAnnotation[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] var prop: Int = R|/prop| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] get(): Int + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] set([ResolvedTo(RAW_FIR)] value: Int): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +COMPILER_REQUIRED_ANNOTATIONS: +FILE: [ResolvedTo(IMPORTS)] constructorParameterWithImplicitParameterAnnotation.kt + @Target[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] annotation class ParameterAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/ParameterAnnotation.i] i: Int): R|ParameterAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] get(): Int + + } + public? final? [ResolvedTo(RAW_FIR)] class Sub : R|kotlin/Any| { + public? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] [ContainingClassKey=Sub] constructor([ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] [CorrespondingProperty=/Sub.prop] @ParameterAnnotation[Unresolved](LAZY_EXPRESSION) prop: Int): R|Sub| { + LAZY_super + } + + @ParameterAnnotation[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] var prop: Int = R|/prop| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] get(): Int + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] set([ResolvedTo(RAW_FIR)] value: Int): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +COMPANION_GENERATION: +FILE: [ResolvedTo(IMPORTS)] constructorParameterWithImplicitParameterAnnotation.kt + @Target[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] annotation class ParameterAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/ParameterAnnotation.i] i: Int): R|ParameterAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] get(): Int + + } + public? final? [ResolvedTo(RAW_FIR)] class Sub : R|kotlin/Any| { + public? [ResolvedTo(COMPANION_GENERATION)] [ContainingClassKey=Sub] constructor([ResolvedTo(COMPANION_GENERATION)] [CorrespondingProperty=/Sub.prop] @ParameterAnnotation[Unresolved](LAZY_EXPRESSION) prop: Int): R|Sub| { + LAZY_super + } + + @ParameterAnnotation[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] var prop: Int = R|/prop| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] get(): Int + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] set([ResolvedTo(RAW_FIR)] value: Int): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +SUPER_TYPES: +FILE: [ResolvedTo(IMPORTS)] constructorParameterWithImplicitParameterAnnotation.kt + @Target[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] annotation class ParameterAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/ParameterAnnotation.i] i: Int): R|ParameterAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] get(): Int + + } + public? final? [ResolvedTo(SUPER_TYPES)] class Sub : R|kotlin/Any| { + public? [ResolvedTo(SUPER_TYPES)] [ContainingClassKey=Sub] constructor([ResolvedTo(SUPER_TYPES)] [CorrespondingProperty=/Sub.prop] @ParameterAnnotation[Unresolved](LAZY_EXPRESSION) prop: Int): R|Sub| { + LAZY_super + } + + @ParameterAnnotation[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] var prop: Int = R|/prop| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] get(): Int + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] set([ResolvedTo(RAW_FIR)] value: Int): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +TYPES: +FILE: [ResolvedTo(IMPORTS)] constructorParameterWithImplicitParameterAnnotation.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.VALUE_PARAMETER|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class ParameterAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/ParameterAnnotation.i] i: Int): R|ParameterAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] get(): Int + + } + public? final? [ResolvedTo(TYPES)] class Sub : R|kotlin/Any| { + public? [ResolvedTo(TYPES)] [ContainingClassKey=Sub] constructor([ResolvedTo(TYPES)] [CorrespondingProperty=/Sub.prop] @R|ParameterAnnotation|[Types](LAZY_EXPRESSION) prop: R|kotlin/Int|): R|Sub| { + LAZY_super + } + + @ParameterAnnotation[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] var prop: Int = R|/prop| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] get(): Int + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] set([ResolvedTo(RAW_FIR)] value: Int): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +STATUS: +FILE: [ResolvedTo(IMPORTS)] constructorParameterWithImplicitParameterAnnotation.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.VALUE_PARAMETER|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class ParameterAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/ParameterAnnotation.i] i: Int): R|ParameterAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] get(): Int + + } + public final [ResolvedTo(STATUS)] class Sub : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/Sub.prop] @R|ParameterAnnotation|[Types](LAZY_EXPRESSION) prop: R|kotlin/Int|): R|Sub| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] set([ResolvedTo(STATUS)] value: R|kotlin/Int|): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +EXPECT_ACTUAL_MATCHING: +FILE: [ResolvedTo(IMPORTS)] constructorParameterWithImplicitParameterAnnotation.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.VALUE_PARAMETER|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class ParameterAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/ParameterAnnotation.i] i: Int): R|ParameterAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] get(): Int + + } + public final [ResolvedTo(STATUS)] class Sub : R|kotlin/Any| { + public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=Sub] constructor([ResolvedTo(EXPECT_ACTUAL_MATCHING)] [CorrespondingProperty=/Sub.prop] @R|ParameterAnnotation|[Types](LAZY_EXPRESSION) prop: R|kotlin/Int|): R|Sub| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] set([ResolvedTo(STATUS)] value: R|kotlin/Int|): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +CONTRACTS: +FILE: [ResolvedTo(IMPORTS)] constructorParameterWithImplicitParameterAnnotation.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.VALUE_PARAMETER|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class ParameterAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/ParameterAnnotation.i] i: Int): R|ParameterAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] get(): Int + + } + public final [ResolvedTo(STATUS)] class Sub : R|kotlin/Any| { + public [ResolvedTo(CONTRACTS)] [ContainingClassKey=Sub] constructor([ResolvedTo(CONTRACTS)] [CorrespondingProperty=/Sub.prop] @R|ParameterAnnotation|[Types](LAZY_EXPRESSION) prop: R|kotlin/Int|): R|Sub| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] set([ResolvedTo(STATUS)] value: R|kotlin/Int|): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +IMPLICIT_TYPES_BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] constructorParameterWithImplicitParameterAnnotation.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.VALUE_PARAMETER|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class ParameterAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/ParameterAnnotation.i] i: Int): R|ParameterAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] get(): Int + + } + public final [ResolvedTo(STATUS)] class Sub : R|kotlin/Any| { + public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=Sub] constructor([ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [CorrespondingProperty=/Sub.prop] @R|ParameterAnnotation|[Types](LAZY_EXPRESSION) prop: R|kotlin/Int|): R|Sub| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] set([ResolvedTo(STATUS)] value: R|kotlin/Int|): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +ANNOTATION_ARGUMENTS: +FILE: [ResolvedTo(IMPORTS)] constructorParameterWithImplicitParameterAnnotation.kt + @R|kotlin/annotation/Target|[Types](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.VALUE_PARAMETER|) public final [ResolvedTo(STATUS)] annotation class ParameterAnnotation : R|kotlin/Annotation| { + public [ResolvedTo(STATUS)] [ContainingClassKey=ParameterAnnotation] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/ParameterAnnotation.i] i: R|kotlin/Int|): R|ParameterAnnotation| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val i: R|kotlin/Int| = R|/i| + public [ResolvedTo(STATUS)] [ContainingClassKey=ParameterAnnotation] get(): R|kotlin/Int| + + } + public final [ResolvedTo(STATUS)] class Sub : R|kotlin/Any| { + public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=Sub] constructor([ResolvedTo(ANNOTATION_ARGUMENTS)] [CorrespondingProperty=/Sub.prop] @R|ParameterAnnotation|[Types](i = R|/konstant|) prop: R|kotlin/Int|): R|Sub| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] set([ResolvedTo(STATUS)] value: R|kotlin/Int|): R|kotlin/Unit| + + } + public final const [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val konstant: R|kotlin/Int| = Int(0) + public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|kotlin/Int| + +BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] constructorParameterWithImplicitParameterAnnotation.kt + @R|kotlin/annotation/Target|[Types](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.VALUE_PARAMETER|) public final [ResolvedTo(STATUS)] annotation class ParameterAnnotation : R|kotlin/Annotation| { + public [ResolvedTo(STATUS)] [ContainingClassKey=ParameterAnnotation] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/ParameterAnnotation.i] i: R|kotlin/Int|): R|ParameterAnnotation| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val i: R|kotlin/Int| = R|/i| + public [ResolvedTo(STATUS)] [ContainingClassKey=ParameterAnnotation] get(): R|kotlin/Int| + + } + public final [ResolvedTo(STATUS)] class Sub : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Sub] constructor([ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=/Sub.prop] @R|ParameterAnnotation|[Types](i = R|/konstant|) prop: R|kotlin/Int|): R|Sub| { + super() + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] set([ResolvedTo(STATUS)] value: R|kotlin/Int|): R|kotlin/Unit| + + } + public final const [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val konstant: R|kotlin/Int| = Int(0) + public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|kotlin/Int| + +FILE RAW TO BODY: +FILE: [ResolvedTo(BODY_RESOLVE)] constructorParameterWithImplicitParameterAnnotation.kt + @R|kotlin/annotation/Target|[Types](allowedTargets = vararg(Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.VALUE_PARAMETER|)) public final [ResolvedTo(BODY_RESOLVE)] annotation class ParameterAnnotation : R|kotlin/Annotation| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=ParameterAnnotation] constructor([ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=/ParameterAnnotation.i] i: R|kotlin/Int|): R|ParameterAnnotation| { + super() + } + + public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] val i: R|kotlin/Int| = R|/i| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=ParameterAnnotation] get(): R|kotlin/Int| + + } + public final [ResolvedTo(BODY_RESOLVE)] class Sub : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Sub] constructor([ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=/Sub.prop] @R|ParameterAnnotation|[Types](i = R|/konstant|) prop: R|kotlin/Int|): R|Sub| { + super() + } + + public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Sub] set([ResolvedTo(BODY_RESOLVE)] value: R|kotlin/Int|): R|kotlin/Unit| + + } + public final const [ResolvedTo(BODY_RESOLVE)] val konstant: R|kotlin/Int| = Int(0) + public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int| diff --git a/analysis/low-level-api-fir/testData/lazyResolve/properties/generatedPropertyFromParameter.kt b/analysis/low-level-api-fir/testData/lazyResolve/properties/generatedPropertyFromParameter.kt new file mode 100644 index 00000000000..1f3c09a4d65 --- /dev/null +++ b/analysis/low-level-api-fir/testData/lazyResolve/properties/generatedPropertyFromParameter.kt @@ -0,0 +1,21 @@ +// MEMBER_NAME_FILTER: prop + +@Target(AnnotationTarget.FIELD) +annotation class FieldAnnotation(val i: Int) + +@Repeatable +annotation class Anno(val s: String) + +class Sub( + @FieldAnnotation(konstant) + @field:Anno("field$stringConstant") + @property:Anno("property$stringConstant") + @get:Anno("get$stringConstant") + @set:Anno("set$stringConstant") + @setparam:Anno("setparam$stringConstant") + @param:Anno("param$stringConstant") + var prop: Int, +) + +const val konstant = 0 +const val stringConstant = "str ${1}" \ No newline at end of file diff --git a/analysis/low-level-api-fir/testData/lazyResolve/properties/generatedPropertyFromParameter.txt b/analysis/low-level-api-fir/testData/lazyResolve/properties/generatedPropertyFromParameter.txt new file mode 100644 index 00000000000..6747f08b636 --- /dev/null +++ b/analysis/low-level-api-fir/testData/lazyResolve/properties/generatedPropertyFromParameter.txt @@ -0,0 +1,454 @@ +RAW_FIR: +FILE: [ResolvedTo(RAW_FIR)] generatedPropertyFromParameter.kt + @Target[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] annotation class FieldAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/FieldAnnotation.i] i: Int): R|FieldAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] get(): Int + + } + @Repeatable[Unresolved]() public? final? [ResolvedTo(RAW_FIR)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Anno.s] s: String): R|Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val s: String = R|/s| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): String + + } + public? final? [ResolvedTo(RAW_FIR)] class Sub : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Sub.prop] @FieldAnnotation[Unresolved](LAZY_EXPRESSION) @CONSTRUCTOR_PARAMETER:Anno[Unresolved](LAZY_EXPRESSION) prop: Int): R|Sub| { + LAZY_super + } + + @FieldAnnotation[Unresolved](LAZY_EXPRESSION) @PROPERTY:Anno[Unresolved](LAZY_EXPRESSION) field:@FIELD:Anno[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] var prop: Int = R|/prop| + @PROPERTY_GETTER:Anno[Unresolved](LAZY_EXPRESSION) public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] get(): Int + @PROPERTY_SETTER:Anno[Unresolved](LAZY_EXPRESSION) public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] set([ResolvedTo(RAW_FIR)] @SETTER_PARAMETER:Anno[Unresolved](LAZY_EXPRESSION) value: Int): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? const [ResolvedTo(RAW_FIR)] val stringConstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +IMPORTS: +FILE: [ResolvedTo(IMPORTS)] generatedPropertyFromParameter.kt + @Target[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] annotation class FieldAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/FieldAnnotation.i] i: Int): R|FieldAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] get(): Int + + } + @Repeatable[Unresolved]() public? final? [ResolvedTo(RAW_FIR)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Anno.s] s: String): R|Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val s: String = R|/s| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): String + + } + public? final? [ResolvedTo(RAW_FIR)] class Sub : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Sub.prop] @FieldAnnotation[Unresolved](LAZY_EXPRESSION) @CONSTRUCTOR_PARAMETER:Anno[Unresolved](LAZY_EXPRESSION) prop: Int): R|Sub| { + LAZY_super + } + + @FieldAnnotation[Unresolved](LAZY_EXPRESSION) @PROPERTY:Anno[Unresolved](LAZY_EXPRESSION) field:@FIELD:Anno[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] var prop: Int = R|/prop| + @PROPERTY_GETTER:Anno[Unresolved](LAZY_EXPRESSION) public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] get(): Int + @PROPERTY_SETTER:Anno[Unresolved](LAZY_EXPRESSION) public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] set([ResolvedTo(RAW_FIR)] @SETTER_PARAMETER:Anno[Unresolved](LAZY_EXPRESSION) value: Int): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? const [ResolvedTo(RAW_FIR)] val stringConstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +COMPILER_REQUIRED_ANNOTATIONS: +FILE: [ResolvedTo(IMPORTS)] generatedPropertyFromParameter.kt + @Target[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] annotation class FieldAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/FieldAnnotation.i] i: Int): R|FieldAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] get(): Int + + } + @Repeatable[Unresolved]() public? final? [ResolvedTo(RAW_FIR)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Anno.s] s: String): R|Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val s: String = R|/s| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): String + + } + public? final? [ResolvedTo(RAW_FIR)] class Sub : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Sub.prop] @FieldAnnotation[Unresolved](LAZY_EXPRESSION) @CONSTRUCTOR_PARAMETER:Anno[Unresolved](LAZY_EXPRESSION) prop: Int): R|Sub| { + LAZY_super + } + + @FieldAnnotation[Unresolved](LAZY_EXPRESSION) @PROPERTY:Anno[Unresolved](LAZY_EXPRESSION) field:@FIELD:Anno[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] [IsFromPrimaryConstructor=true] var prop: Int = R|/prop| + @PROPERTY_GETTER:Anno[Unresolved](LAZY_EXPRESSION) public? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] [ContainingClassKey=Sub] get(): Int + @PROPERTY_SETTER:Anno[Unresolved](LAZY_EXPRESSION) public? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] [ContainingClassKey=Sub] set([ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] @SETTER_PARAMETER:Anno[Unresolved](LAZY_EXPRESSION) value: Int): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? const [ResolvedTo(RAW_FIR)] val stringConstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +COMPANION_GENERATION: +FILE: [ResolvedTo(IMPORTS)] generatedPropertyFromParameter.kt + @Target[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] annotation class FieldAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/FieldAnnotation.i] i: Int): R|FieldAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] get(): Int + + } + @Repeatable[Unresolved]() public? final? [ResolvedTo(RAW_FIR)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Anno.s] s: String): R|Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val s: String = R|/s| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): String + + } + public? final? [ResolvedTo(RAW_FIR)] class Sub : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Sub.prop] @FieldAnnotation[Unresolved](LAZY_EXPRESSION) @CONSTRUCTOR_PARAMETER:Anno[Unresolved](LAZY_EXPRESSION) prop: Int): R|Sub| { + LAZY_super + } + + @FieldAnnotation[Unresolved](LAZY_EXPRESSION) @PROPERTY:Anno[Unresolved](LAZY_EXPRESSION) field:@FIELD:Anno[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(COMPANION_GENERATION)] [IsFromPrimaryConstructor=true] var prop: Int = R|/prop| + @PROPERTY_GETTER:Anno[Unresolved](LAZY_EXPRESSION) public? [ResolvedTo(COMPANION_GENERATION)] [ContainingClassKey=Sub] get(): Int + @PROPERTY_SETTER:Anno[Unresolved](LAZY_EXPRESSION) public? [ResolvedTo(COMPANION_GENERATION)] [ContainingClassKey=Sub] set([ResolvedTo(COMPANION_GENERATION)] @SETTER_PARAMETER:Anno[Unresolved](LAZY_EXPRESSION) value: Int): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? const [ResolvedTo(RAW_FIR)] val stringConstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +SUPER_TYPES: +FILE: [ResolvedTo(IMPORTS)] generatedPropertyFromParameter.kt + @Target[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] annotation class FieldAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/FieldAnnotation.i] i: Int): R|FieldAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] get(): Int + + } + @Repeatable[Unresolved]() public? final? [ResolvedTo(RAW_FIR)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Anno.s] s: String): R|Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val s: String = R|/s| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): String + + } + public? final? [ResolvedTo(SUPER_TYPES)] class Sub : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Sub.prop] @FieldAnnotation[Unresolved](LAZY_EXPRESSION) @CONSTRUCTOR_PARAMETER:Anno[Unresolved](LAZY_EXPRESSION) prop: Int): R|Sub| { + LAZY_super + } + + @FieldAnnotation[Unresolved](LAZY_EXPRESSION) @PROPERTY:Anno[Unresolved](LAZY_EXPRESSION) field:@FIELD:Anno[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(SUPER_TYPES)] [IsFromPrimaryConstructor=true] var prop: Int = R|/prop| + @PROPERTY_GETTER:Anno[Unresolved](LAZY_EXPRESSION) public? [ResolvedTo(SUPER_TYPES)] [ContainingClassKey=Sub] get(): Int + @PROPERTY_SETTER:Anno[Unresolved](LAZY_EXPRESSION) public? [ResolvedTo(SUPER_TYPES)] [ContainingClassKey=Sub] set([ResolvedTo(SUPER_TYPES)] @SETTER_PARAMETER:Anno[Unresolved](LAZY_EXPRESSION) value: Int): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? const [ResolvedTo(RAW_FIR)] val stringConstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +TYPES: +FILE: [ResolvedTo(IMPORTS)] generatedPropertyFromParameter.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.FIELD|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class FieldAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/FieldAnnotation.i] i: Int): R|FieldAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] get(): Int + + } + @Repeatable[Unresolved]() public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Anno.s] s: String): R|Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val s: String = R|/s| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): String + + } + public? final? [ResolvedTo(TYPES)] class Sub : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Sub.prop] @FieldAnnotation[Unresolved](LAZY_EXPRESSION) @CONSTRUCTOR_PARAMETER:Anno[Unresolved](LAZY_EXPRESSION) prop: Int): R|Sub| { + LAZY_super + } + + @PROPERTY:R|Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|Anno|[Types](LAZY_EXPRESSION) @R|FieldAnnotation|[Types](LAZY_EXPRESSION) public? final? [ResolvedTo(TYPES)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + @PROPERTY_GETTER:R|Anno|[Types](LAZY_EXPRESSION) public? [ResolvedTo(TYPES)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + @PROPERTY_SETTER:R|Anno|[Types](LAZY_EXPRESSION) public? [ResolvedTo(TYPES)] [ContainingClassKey=Sub] set([ResolvedTo(TYPES)] @SETTER_PARAMETER:R|Anno|[Types](LAZY_EXPRESSION) value: R|kotlin/Int|): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? const [ResolvedTo(RAW_FIR)] val stringConstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +STATUS: +FILE: [ResolvedTo(IMPORTS)] generatedPropertyFromParameter.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.FIELD|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class FieldAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/FieldAnnotation.i] i: Int): R|FieldAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] get(): Int + + } + @Repeatable[Unresolved]() public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Anno.s] s: String): R|Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val s: String = R|/s| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): String + + } + public final [ResolvedTo(STATUS)] class Sub : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/Sub.prop] @CONSTRUCTOR_PARAMETER:R|Anno|[Types](LAZY_EXPRESSION) prop: R|kotlin/Int|): R|Sub| { + LAZY_super + } + + @PROPERTY:R|Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|Anno|[Types](LAZY_EXPRESSION) @R|FieldAnnotation|[Types](LAZY_EXPRESSION) public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + @PROPERTY_GETTER:R|Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + @PROPERTY_SETTER:R|Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] set([ResolvedTo(STATUS)] @SETTER_PARAMETER:R|Anno|[Types](LAZY_EXPRESSION) value: R|kotlin/Int|): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? const [ResolvedTo(RAW_FIR)] val stringConstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +EXPECT_ACTUAL_MATCHING: +FILE: [ResolvedTo(IMPORTS)] generatedPropertyFromParameter.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.FIELD|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class FieldAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/FieldAnnotation.i] i: Int): R|FieldAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] get(): Int + + } + @Repeatable[Unresolved]() public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Anno.s] s: String): R|Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val s: String = R|/s| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): String + + } + public final [ResolvedTo(STATUS)] class Sub : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/Sub.prop] @CONSTRUCTOR_PARAMETER:R|Anno|[Types](LAZY_EXPRESSION) prop: R|kotlin/Int|): R|Sub| { + LAZY_super + } + + @PROPERTY:R|Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|Anno|[Types](LAZY_EXPRESSION) @R|FieldAnnotation|[Types](LAZY_EXPRESSION) public final [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + @PROPERTY_GETTER:R|Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + @PROPERTY_SETTER:R|Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=Sub] set([ResolvedTo(EXPECT_ACTUAL_MATCHING)] @SETTER_PARAMETER:R|Anno|[Types](LAZY_EXPRESSION) value: R|kotlin/Int|): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? const [ResolvedTo(RAW_FIR)] val stringConstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +CONTRACTS: +FILE: [ResolvedTo(IMPORTS)] generatedPropertyFromParameter.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.FIELD|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class FieldAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/FieldAnnotation.i] i: Int): R|FieldAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] get(): Int + + } + @Repeatable[Unresolved]() public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Anno.s] s: String): R|Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val s: String = R|/s| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): String + + } + public final [ResolvedTo(STATUS)] class Sub : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/Sub.prop] @CONSTRUCTOR_PARAMETER:R|Anno|[Types](LAZY_EXPRESSION) prop: R|kotlin/Int|): R|Sub| { + LAZY_super + } + + @PROPERTY:R|Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|Anno|[Types](LAZY_EXPRESSION) @R|FieldAnnotation|[Types](LAZY_EXPRESSION) public final [ResolvedTo(CONTRACTS)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + @PROPERTY_GETTER:R|Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(CONTRACTS)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + @PROPERTY_SETTER:R|Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(CONTRACTS)] [ContainingClassKey=Sub] set([ResolvedTo(CONTRACTS)] @SETTER_PARAMETER:R|Anno|[Types](LAZY_EXPRESSION) value: R|kotlin/Int|): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? const [ResolvedTo(RAW_FIR)] val stringConstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +IMPLICIT_TYPES_BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] generatedPropertyFromParameter.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.FIELD|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class FieldAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/FieldAnnotation.i] i: Int): R|FieldAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=FieldAnnotation] get(): Int + + } + @Repeatable[Unresolved]() public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class Anno : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Anno.s] s: String): R|Anno| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val s: String = R|/s| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Anno] get(): String + + } + public final [ResolvedTo(STATUS)] class Sub : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/Sub.prop] @CONSTRUCTOR_PARAMETER:R|Anno|[Types](LAZY_EXPRESSION) prop: R|kotlin/Int|): R|Sub| { + LAZY_super + } + + @PROPERTY:R|Anno|[Types](LAZY_EXPRESSION) field:@FIELD:R|Anno|[Types](LAZY_EXPRESSION) @R|FieldAnnotation|[Types](LAZY_EXPRESSION) public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + @PROPERTY_GETTER:R|Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + @PROPERTY_SETTER:R|Anno|[Types](LAZY_EXPRESSION) public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=Sub] set([ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] @SETTER_PARAMETER:R|Anno|[Types](LAZY_EXPRESSION) value: R|kotlin/Int|): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + public? final? const [ResolvedTo(RAW_FIR)] val stringConstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +ANNOTATION_ARGUMENTS: +FILE: [ResolvedTo(IMPORTS)] generatedPropertyFromParameter.kt + @R|kotlin/annotation/Target|[Types](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.FIELD|) public final [ResolvedTo(STATUS)] annotation class FieldAnnotation : R|kotlin/Annotation| { + public [ResolvedTo(STATUS)] [ContainingClassKey=FieldAnnotation] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/FieldAnnotation.i] i: R|kotlin/Int|): R|FieldAnnotation| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val i: R|kotlin/Int| = R|/i| + public [ResolvedTo(STATUS)] [ContainingClassKey=FieldAnnotation] get(): R|kotlin/Int| + + } + @R|kotlin/annotation/Repeatable|[Types]() public final [ResolvedTo(STATUS)] annotation class Anno : R|kotlin/Annotation| { + public [ResolvedTo(STATUS)] [ContainingClassKey=Anno] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/Anno.s] s: R|kotlin/String|): R|Anno| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val s: R|kotlin/String| = R|/s| + public [ResolvedTo(STATUS)] [ContainingClassKey=Anno] get(): R|kotlin/String| + + } + public final [ResolvedTo(STATUS)] class Sub : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/Sub.prop] @CONSTRUCTOR_PARAMETER:R|Anno|[Types](LAZY_EXPRESSION) prop: R|kotlin/Int|): R|Sub| { + LAZY_super + } + + @PROPERTY:R|Anno|[Types](s = (String(property), R|/stringConstant|)) field:@FIELD:R|Anno|[Types](s = (String(field), R|/stringConstant|)) @R|FieldAnnotation|[Types](i = R|/konstant|) public final [ResolvedTo(ANNOTATION_ARGUMENTS)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + @PROPERTY_GETTER:R|Anno|[Types](s = (String(get), R|/stringConstant|)) public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + @PROPERTY_SETTER:R|Anno|[Types](s = (String(set), R|/stringConstant|)) public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=Sub] set([ResolvedTo(ANNOTATION_ARGUMENTS)] @SETTER_PARAMETER:R|Anno|[Types](s = (String(setparam), R|/stringConstant|)) value: R|kotlin/Int|): R|kotlin/Unit| + + } + public final const [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val konstant: R|kotlin/Int| = Int(0) + public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|kotlin/Int| + public final const [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val stringConstant: R|kotlin/String| = (String(str ), Int(1)) + public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|kotlin/String| + +BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] generatedPropertyFromParameter.kt + @R|kotlin/annotation/Target|[Types](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.FIELD|) public final [ResolvedTo(STATUS)] annotation class FieldAnnotation : R|kotlin/Annotation| { + public [ResolvedTo(STATUS)] [ContainingClassKey=FieldAnnotation] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/FieldAnnotation.i] i: R|kotlin/Int|): R|FieldAnnotation| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val i: R|kotlin/Int| = R|/i| + public [ResolvedTo(STATUS)] [ContainingClassKey=FieldAnnotation] get(): R|kotlin/Int| + + } + @R|kotlin/annotation/Repeatable|[Types]() public final [ResolvedTo(STATUS)] annotation class Anno : R|kotlin/Annotation| { + public [ResolvedTo(STATUS)] [ContainingClassKey=Anno] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/Anno.s] s: R|kotlin/String|): R|Anno| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] val s: R|kotlin/String| = R|/s| + public [ResolvedTo(STATUS)] [ContainingClassKey=Anno] get(): R|kotlin/String| + + } + public final [ResolvedTo(STATUS)] class Sub : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/Sub.prop] @CONSTRUCTOR_PARAMETER:R|Anno|[Types](LAZY_EXPRESSION) prop: R|kotlin/Int|): R|Sub| { + LAZY_super + } + + @PROPERTY:R|Anno|[Types](s = (String(property), R|/stringConstant|)) field:@FIELD:R|Anno|[Types](s = (String(field), R|/stringConstant|)) @R|FieldAnnotation|[Types](i = R|/konstant|) public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + @PROPERTY_GETTER:R|Anno|[Types](s = (String(get), R|/stringConstant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + @PROPERTY_SETTER:R|Anno|[Types](s = (String(set), R|/stringConstant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Sub] set([ResolvedTo(BODY_RESOLVE)] @SETTER_PARAMETER:R|Anno|[Types](s = (String(setparam), R|/stringConstant|)) value: R|kotlin/Int|): R|kotlin/Unit| + + } + public final const [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val konstant: R|kotlin/Int| = Int(0) + public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|kotlin/Int| + public final const [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val stringConstant: R|kotlin/String| = (String(str ), Int(1)) + public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|kotlin/String| + +FILE RAW TO BODY: +FILE: [ResolvedTo(BODY_RESOLVE)] generatedPropertyFromParameter.kt + @R|kotlin/annotation/Target|[Types](allowedTargets = vararg(Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.FIELD|)) public final [ResolvedTo(BODY_RESOLVE)] annotation class FieldAnnotation : R|kotlin/Annotation| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=FieldAnnotation] constructor([ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=/FieldAnnotation.i] i: R|kotlin/Int|): R|FieldAnnotation| { + super() + } + + public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] val i: R|kotlin/Int| = R|/i| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=FieldAnnotation] get(): R|kotlin/Int| + + } + @R|kotlin/annotation/Repeatable|[Types]() public final [ResolvedTo(BODY_RESOLVE)] annotation class Anno : R|kotlin/Annotation| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Anno] constructor([ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=/Anno.s] s: R|kotlin/String|): R|Anno| { + super() + } + + public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] val s: R|kotlin/String| = R|/s| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Anno] get(): R|kotlin/String| + + } + public final [ResolvedTo(BODY_RESOLVE)] class Sub : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Sub] constructor([ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=/Sub.prop] @CONSTRUCTOR_PARAMETER:R|Anno|[Types](s = (String(param), R|/stringConstant|)) prop: R|kotlin/Int|): R|Sub| { + super() + } + + @PROPERTY:R|Anno|[Types](s = (String(property), R|/stringConstant|)) field:@FIELD:R|Anno|[Types](s = (String(field), R|/stringConstant|)) @R|FieldAnnotation|[Types](i = R|/konstant|) public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + @PROPERTY_GETTER:R|Anno|[Types](s = (String(get), R|/stringConstant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + @PROPERTY_SETTER:R|Anno|[Types](s = (String(set), R|/stringConstant|)) public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Sub] set([ResolvedTo(BODY_RESOLVE)] @SETTER_PARAMETER:R|Anno|[Types](s = (String(setparam), R|/stringConstant|)) value: R|kotlin/Int|): R|kotlin/Unit| + + } + public final const [ResolvedTo(BODY_RESOLVE)] val konstant: R|kotlin/Int| = Int(0) + public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int| + public final const [ResolvedTo(BODY_RESOLVE)] val stringConstant: R|kotlin/String| = (String(str ), Int(1)) + public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/String| diff --git a/analysis/low-level-api-fir/testData/lazyResolve/properties/generatedPropertyFromParameterWithImplicitAnnotation.kt b/analysis/low-level-api-fir/testData/lazyResolve/properties/generatedPropertyFromParameterWithImplicitAnnotation.kt new file mode 100644 index 00000000000..f68a48a5217 --- /dev/null +++ b/analysis/low-level-api-fir/testData/lazyResolve/properties/generatedPropertyFromParameterWithImplicitAnnotation.kt @@ -0,0 +1,11 @@ +// MEMBER_NAME_FILTER: prop + +@Target(AnnotationTarget.VALUE_PARAMETER) +annotation class ParameterAnnotation(val i: Int) + +class Sub( + @ParameterAnnotation(konstant) + var prop: Int, +) + +const val konstant = 0 \ No newline at end of file diff --git a/analysis/low-level-api-fir/testData/lazyResolve/properties/generatedPropertyFromParameterWithImplicitAnnotation.txt b/analysis/low-level-api-fir/testData/lazyResolve/properties/generatedPropertyFromParameterWithImplicitAnnotation.txt new file mode 100644 index 00000000000..32f52ec6864 --- /dev/null +++ b/analysis/low-level-api-fir/testData/lazyResolve/properties/generatedPropertyFromParameterWithImplicitAnnotation.txt @@ -0,0 +1,311 @@ +RAW_FIR: +FILE: [ResolvedTo(RAW_FIR)] generatedPropertyFromParameterWithImplicitAnnotation.kt + @Target[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] annotation class ParameterAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/ParameterAnnotation.i] i: Int): R|ParameterAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] get(): Int + + } + public? final? [ResolvedTo(RAW_FIR)] class Sub : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Sub.prop] @ParameterAnnotation[Unresolved](LAZY_EXPRESSION) prop: Int): R|Sub| { + LAZY_super + } + + @ParameterAnnotation[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] var prop: Int = R|/prop| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] get(): Int + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] set([ResolvedTo(RAW_FIR)] value: Int): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +IMPORTS: +FILE: [ResolvedTo(IMPORTS)] generatedPropertyFromParameterWithImplicitAnnotation.kt + @Target[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] annotation class ParameterAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/ParameterAnnotation.i] i: Int): R|ParameterAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] get(): Int + + } + public? final? [ResolvedTo(RAW_FIR)] class Sub : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Sub.prop] @ParameterAnnotation[Unresolved](LAZY_EXPRESSION) prop: Int): R|Sub| { + LAZY_super + } + + @ParameterAnnotation[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] var prop: Int = R|/prop| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] get(): Int + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] set([ResolvedTo(RAW_FIR)] value: Int): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +COMPILER_REQUIRED_ANNOTATIONS: +FILE: [ResolvedTo(IMPORTS)] generatedPropertyFromParameterWithImplicitAnnotation.kt + @Target[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] annotation class ParameterAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/ParameterAnnotation.i] i: Int): R|ParameterAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] get(): Int + + } + public? final? [ResolvedTo(RAW_FIR)] class Sub : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Sub.prop] @ParameterAnnotation[Unresolved](LAZY_EXPRESSION) prop: Int): R|Sub| { + LAZY_super + } + + @ParameterAnnotation[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] [IsFromPrimaryConstructor=true] var prop: Int = R|/prop| + public? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] [ContainingClassKey=Sub] get(): Int + public? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] [ContainingClassKey=Sub] set([ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] value: Int): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +COMPANION_GENERATION: +FILE: [ResolvedTo(IMPORTS)] generatedPropertyFromParameterWithImplicitAnnotation.kt + @Target[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] annotation class ParameterAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/ParameterAnnotation.i] i: Int): R|ParameterAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] get(): Int + + } + public? final? [ResolvedTo(RAW_FIR)] class Sub : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Sub.prop] @ParameterAnnotation[Unresolved](LAZY_EXPRESSION) prop: Int): R|Sub| { + LAZY_super + } + + @ParameterAnnotation[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(COMPANION_GENERATION)] [IsFromPrimaryConstructor=true] var prop: Int = R|/prop| + public? [ResolvedTo(COMPANION_GENERATION)] [ContainingClassKey=Sub] get(): Int + public? [ResolvedTo(COMPANION_GENERATION)] [ContainingClassKey=Sub] set([ResolvedTo(COMPANION_GENERATION)] value: Int): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +SUPER_TYPES: +FILE: [ResolvedTo(IMPORTS)] generatedPropertyFromParameterWithImplicitAnnotation.kt + @Target[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(RAW_FIR)] annotation class ParameterAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/ParameterAnnotation.i] i: Int): R|ParameterAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] get(): Int + + } + public? final? [ResolvedTo(SUPER_TYPES)] class Sub : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Sub.prop] @ParameterAnnotation[Unresolved](LAZY_EXPRESSION) prop: Int): R|Sub| { + LAZY_super + } + + @ParameterAnnotation[Unresolved](LAZY_EXPRESSION) public? final? [ResolvedTo(SUPER_TYPES)] [IsFromPrimaryConstructor=true] var prop: Int = R|/prop| + public? [ResolvedTo(SUPER_TYPES)] [ContainingClassKey=Sub] get(): Int + public? [ResolvedTo(SUPER_TYPES)] [ContainingClassKey=Sub] set([ResolvedTo(SUPER_TYPES)] value: Int): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +TYPES: +FILE: [ResolvedTo(IMPORTS)] generatedPropertyFromParameterWithImplicitAnnotation.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.VALUE_PARAMETER|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class ParameterAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/ParameterAnnotation.i] i: Int): R|ParameterAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] get(): Int + + } + public? final? [ResolvedTo(TYPES)] class Sub : R|kotlin/Any| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=Sub] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/Sub.prop] @ParameterAnnotation[Unresolved](LAZY_EXPRESSION) prop: Int): R|Sub| { + LAZY_super + } + + public? final? [ResolvedTo(TYPES)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + public? [ResolvedTo(TYPES)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + public? [ResolvedTo(TYPES)] [ContainingClassKey=Sub] set([ResolvedTo(TYPES)] value: R|kotlin/Int|): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +STATUS: +FILE: [ResolvedTo(IMPORTS)] generatedPropertyFromParameterWithImplicitAnnotation.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.VALUE_PARAMETER|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class ParameterAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/ParameterAnnotation.i] i: Int): R|ParameterAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] get(): Int + + } + public final [ResolvedTo(STATUS)] class Sub : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/Sub.prop] @R|ParameterAnnotation|[Types](LAZY_EXPRESSION) prop: R|kotlin/Int|): R|Sub| { + LAZY_super + } + + public final [ResolvedTo(STATUS)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] set([ResolvedTo(STATUS)] value: R|kotlin/Int|): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +EXPECT_ACTUAL_MATCHING: +FILE: [ResolvedTo(IMPORTS)] generatedPropertyFromParameterWithImplicitAnnotation.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.VALUE_PARAMETER|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class ParameterAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/ParameterAnnotation.i] i: Int): R|ParameterAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] get(): Int + + } + public final [ResolvedTo(STATUS)] class Sub : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/Sub.prop] @R|ParameterAnnotation|[Types](LAZY_EXPRESSION) prop: R|kotlin/Int|): R|Sub| { + LAZY_super + } + + public final [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + public [ResolvedTo(EXPECT_ACTUAL_MATCHING)] [ContainingClassKey=Sub] set([ResolvedTo(EXPECT_ACTUAL_MATCHING)] value: R|kotlin/Int|): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +CONTRACTS: +FILE: [ResolvedTo(IMPORTS)] generatedPropertyFromParameterWithImplicitAnnotation.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.VALUE_PARAMETER|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class ParameterAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/ParameterAnnotation.i] i: Int): R|ParameterAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] get(): Int + + } + public final [ResolvedTo(STATUS)] class Sub : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/Sub.prop] @R|ParameterAnnotation|[Types](LAZY_EXPRESSION) prop: R|kotlin/Int|): R|Sub| { + LAZY_super + } + + public final [ResolvedTo(CONTRACTS)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(CONTRACTS)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + public [ResolvedTo(CONTRACTS)] [ContainingClassKey=Sub] set([ResolvedTo(CONTRACTS)] value: R|kotlin/Int|): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +IMPLICIT_TYPES_BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] generatedPropertyFromParameterWithImplicitAnnotation.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.VALUE_PARAMETER|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class ParameterAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/ParameterAnnotation.i] i: Int): R|ParameterAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] get(): Int + + } + public final [ResolvedTo(STATUS)] class Sub : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/Sub.prop] @R|ParameterAnnotation|[Types](LAZY_EXPRESSION) prop: R|kotlin/Int|): R|Sub| { + LAZY_super + } + + public final [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] [ContainingClassKey=Sub] set([ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] value: R|kotlin/Int|): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +ANNOTATION_ARGUMENTS: +FILE: [ResolvedTo(IMPORTS)] generatedPropertyFromParameterWithImplicitAnnotation.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.VALUE_PARAMETER|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class ParameterAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/ParameterAnnotation.i] i: Int): R|ParameterAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] get(): Int + + } + public final [ResolvedTo(STATUS)] class Sub : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/Sub.prop] @R|ParameterAnnotation|[Types](LAZY_EXPRESSION) prop: R|kotlin/Int|): R|Sub| { + LAZY_super + } + + public final [ResolvedTo(ANNOTATION_ARGUMENTS)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + public [ResolvedTo(ANNOTATION_ARGUMENTS)] [ContainingClassKey=Sub] set([ResolvedTo(ANNOTATION_ARGUMENTS)] value: R|kotlin/Int|): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +BODY_RESOLVE: +FILE: [ResolvedTo(IMPORTS)] generatedPropertyFromParameterWithImplicitAnnotation.kt + @R|kotlin/annotation/Target|[CompilerRequiredAnnotations](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.VALUE_PARAMETER|) public? final? [ResolvedTo(COMPILER_REQUIRED_ANNOTATIONS)] annotation class ParameterAnnotation : R|kotlin/Annotation| { + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] constructor([ResolvedTo(RAW_FIR)] [CorrespondingProperty=/ParameterAnnotation.i] i: Int): R|ParameterAnnotation| { + LAZY_super + } + + public? final? [ResolvedTo(RAW_FIR)] [IsFromPrimaryConstructor=true] val i: Int = R|/i| + public? [ResolvedTo(RAW_FIR)] [ContainingClassKey=ParameterAnnotation] get(): Int + + } + public final [ResolvedTo(STATUS)] class Sub : R|kotlin/Any| { + public [ResolvedTo(STATUS)] [ContainingClassKey=Sub] constructor([ResolvedTo(STATUS)] [CorrespondingProperty=/Sub.prop] @R|ParameterAnnotation|[Types](LAZY_EXPRESSION) prop: R|kotlin/Int|): R|Sub| { + LAZY_super + } + + public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Sub] set([ResolvedTo(BODY_RESOLVE)] value: R|kotlin/Int|): R|kotlin/Unit| + + } + public? final? const [ResolvedTo(RAW_FIR)] val konstant: = LAZY_EXPRESSION + public? [ResolvedTo(RAW_FIR)] get(): + +FILE RAW TO BODY: +FILE: [ResolvedTo(BODY_RESOLVE)] generatedPropertyFromParameterWithImplicitAnnotation.kt + @R|kotlin/annotation/Target|[Types](allowedTargets = vararg(Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.VALUE_PARAMETER|)) public final [ResolvedTo(BODY_RESOLVE)] annotation class ParameterAnnotation : R|kotlin/Annotation| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=ParameterAnnotation] constructor([ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=/ParameterAnnotation.i] i: R|kotlin/Int|): R|ParameterAnnotation| { + super() + } + + public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] val i: R|kotlin/Int| = R|/i| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=ParameterAnnotation] get(): R|kotlin/Int| + + } + public final [ResolvedTo(BODY_RESOLVE)] class Sub : R|kotlin/Any| { + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Sub] constructor([ResolvedTo(BODY_RESOLVE)] [CorrespondingProperty=/Sub.prop] @R|ParameterAnnotation|[Types](i = R|/konstant|) prop: R|kotlin/Int|): R|Sub| { + super() + } + + public final [ResolvedTo(BODY_RESOLVE)] [IsFromPrimaryConstructor=true] var prop: R|kotlin/Int| = R|/prop| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Sub] get(): R|kotlin/Int| + public [ResolvedTo(BODY_RESOLVE)] [ContainingClassKey=Sub] set([ResolvedTo(BODY_RESOLVE)] value: R|kotlin/Int|): R|kotlin/Unit| + + } + public final const [ResolvedTo(BODY_RESOLVE)] val konstant: R|kotlin/Int| = Int(0) + public [ResolvedTo(BODY_RESOLVE)] get(): R|kotlin/Int| 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 69cef1bb1c2..0df67dae454 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 @@ -895,6 +895,18 @@ 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("constructorParameter.kt") + public void testConstructorParameter() throws Exception { + runTest("analysis/low-level-api-fir/testData/lazyResolve/properties/constructorParameter.kt"); + } + + @Test + @TestMetadata("constructorParameterWithImplicitParameterAnnotation.kt") + public void testConstructorParameterWithImplicitParameterAnnotation() throws Exception { + runTest("analysis/low-level-api-fir/testData/lazyResolve/properties/constructorParameterWithImplicitParameterAnnotation.kt"); + } + @Test @TestMetadata("delegateWithAnnotationOnAccessor.kt") public void testDelegateWithAnnotationOnAccessor() throws Exception { @@ -907,6 +919,18 @@ public class FirOutOfContentRootLazyDeclarationResolveTestGenerated extends Abst runTest("analysis/low-level-api-fir/testData/lazyResolve/properties/delegateWithAnnotationOnAccessorWithExplicitType.kt"); } + @Test + @TestMetadata("generatedPropertyFromParameter.kt") + public void testGeneratedPropertyFromParameter() throws Exception { + runTest("analysis/low-level-api-fir/testData/lazyResolve/properties/generatedPropertyFromParameter.kt"); + } + + @Test + @TestMetadata("generatedPropertyFromParameterWithImplicitAnnotation.kt") + public void testGeneratedPropertyFromParameterWithImplicitAnnotation() throws Exception { + runTest("analysis/low-level-api-fir/testData/lazyResolve/properties/generatedPropertyFromParameterWithImplicitAnnotation.kt"); + } + @Test @TestMetadata("getterWithDelegation.kt") public void testGetterWithDelegation() 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 51c558cc4a8..6c5ee95b582 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 @@ -895,6 +895,18 @@ 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("constructorParameter.kt") + public void testConstructorParameter() throws Exception { + runTest("analysis/low-level-api-fir/testData/lazyResolve/properties/constructorParameter.kt"); + } + + @Test + @TestMetadata("constructorParameterWithImplicitParameterAnnotation.kt") + public void testConstructorParameterWithImplicitParameterAnnotation() throws Exception { + runTest("analysis/low-level-api-fir/testData/lazyResolve/properties/constructorParameterWithImplicitParameterAnnotation.kt"); + } + @Test @TestMetadata("delegateWithAnnotationOnAccessor.kt") public void testDelegateWithAnnotationOnAccessor() throws Exception { @@ -907,6 +919,18 @@ public class FirSourceLazyDeclarationResolveTestGenerated extends AbstractFirSou runTest("analysis/low-level-api-fir/testData/lazyResolve/properties/delegateWithAnnotationOnAccessorWithExplicitType.kt"); } + @Test + @TestMetadata("generatedPropertyFromParameter.kt") + public void testGeneratedPropertyFromParameter() throws Exception { + runTest("analysis/low-level-api-fir/testData/lazyResolve/properties/generatedPropertyFromParameter.kt"); + } + + @Test + @TestMetadata("generatedPropertyFromParameterWithImplicitAnnotation.kt") + public void testGeneratedPropertyFromParameterWithImplicitAnnotation() throws Exception { + runTest("analysis/low-level-api-fir/testData/lazyResolve/properties/generatedPropertyFromParameterWithImplicitAnnotation.kt"); + } + @Test @TestMetadata("getterWithDelegation.kt") public void testGetterWithDelegation() throws Exception {