blob: 39c584aeb4010a3779f27ee196bce854876e2ce5 [file]
// RUN_PIPELINE_TILL: BACKEND
// ISSUE: KT-73256, KT-75163, KT-75195
// LANGUAGE: +AnnotationAllUseSiteTarget
package p
@Target(AnnotationTarget.VALUE_PARAMETER)
annotation class ParamOnly(val x: Int = 0)
@Target(AnnotationTarget.VALUE_PARAMETER, AnnotationTarget.PROPERTY)
annotation class ParamProperty(val y: Double = 0.0)
@Target(AnnotationTarget.VALUE_PARAMETER, AnnotationTarget.FIELD)
annotation class ParamField(val z: Boolean = false)
@Target(AnnotationTarget.PROPERTY, AnnotationTarget.FIELD)
annotation class PropertyField(val s: String = "")
@Target(AnnotationTarget.VALUE_PARAMETER, AnnotationTarget.PROPERTY, AnnotationTarget.FIELD)
annotation class ParamPropertyField(val c: Char = ' ')
@Target(AnnotationTarget.PROPERTY_GETTER, AnnotationTarget.PROPERTY_SETTER)
annotation class GetterSetter(val x: Int)
@Target(AnnotationTarget.PROPERTY_GETTER, AnnotationTarget.VALUE_PARAMETER)
annotation class ParamGetter(val y: Double)
@Target(AnnotationTarget.PROPERTY_GETTER, AnnotationTarget.PROPERTY_SETTER, AnnotationTarget.VALUE_PARAMETER)
annotation class ParamGetterSetter(val z: Boolean)
annotation class Default(val s: String)
class My(
@all:ParamOnly
@all:ParamProperty
@all:ParamField
@all:PropertyField
@all:ParamPropertyField
@all:GetterSetter(1)
@all:ParamGetter(1.0)
@all:ParamGetterSetter(false)
@all:Default("a")
val valFromConstructor: Int,
@all:ParamOnly
@all:ParamProperty
@all:ParamField
@all:PropertyField
@all:ParamPropertyField
@all:GetterSetter(2)
@all:ParamGetter(2.0)
@all:ParamGetterSetter(true)
@all:Default("b")
var varFromConstructor: Int,
) {
@all:ParamProperty
@all:ParamField
@all:PropertyField
@all:ParamPropertyField
@all:GetterSetter(3)
@all:ParamGetter(3.0)
@all:ParamGetterSetter(false)
@all:Default("c")
val valInside: Int = 0
@all:ParamOnly
@all:ParamProperty
@all:ParamField
@all:PropertyField
@all:ParamPropertyField
@all:GetterSetter(4)
@all:ParamGetter(4.0)
@all:ParamGetterSetter(true)
@all:Default("d")
var varInside: Int = 1
@all:ParamProperty
@all:ParamField
@all:PropertyField
@all:ParamPropertyField
@all:GetterSetter(5)
@all:ParamGetter(5.0)
@all:ParamGetterSetter(false)
@all:Default("e")
val valWithGetter: Int = 2
get() = field
@all:ParamProperty
@all:PropertyField
@all:ParamPropertyField
@all:GetterSetter(6)
@all:ParamGetter(6.0)
@all:ParamGetterSetter(true)
@all:Default("f")
val valWithoutField: Int
get() = 3
@all:ParamOnly
@all:ParamProperty
@all:ParamField
@all:PropertyField
@all:ParamPropertyField
@all:GetterSetter(7)
@all:ParamGetter(7.0)
@all:ParamGetterSetter(false)
@all:Default("g")
var varWithSetter: Int = 4
set(param) {}
@all:ParamOnly
@all:ParamProperty
@all:ParamField
@all:PropertyField
@all:ParamPropertyField
@all:GetterSetter(8)
@all:ParamGetter(8.0)
@all:ParamGetterSetter(true)
@all:Default("h")
var varWithSetterAndGetter: Int = 5
get() = field
set(param) {}
@all:ParamOnly
@all:ParamProperty
@all:PropertyField
@all:ParamPropertyField
@all:GetterSetter(9)
@all:ParamGetter(9.0)
@all:ParamGetterSetter(false)
@all:Default("i")
var varWithoutField: Int
get() = 6
set(param) {}
}
/* GENERATED_FIR_TAGS: annotationDeclaration, annotationUseSiteTargetAll, classDeclaration, getter, integerLiteral,
primaryConstructor, propertyDeclaration, setter, stringLiteral */