Files
kotlin-fork/compiler/testData/diagnostics/tests/annotations/withUseSiteTarget/DelegateAnnotations.fir.kt
T

34 lines
806 B
Kotlin
Vendored

import kotlin.reflect.KProperty
@Target(AnnotationTarget.FIELD) annotation class Field
@Target(AnnotationTarget.PROPERTY) annotation class Prop
class CustomDelegate {
operator fun getValue(thisRef: Any?, prop: KProperty<*>): String = prop.name
}
@delegate:Field
class SomeClass {
@delegate:Field
constructor()
@delegate:Field @delegate:Prop
protected val simpleProperty: String = "text"
@delegate:Field @delegate:Prop
protected val delegatedProperty: String by CustomDelegate()
@delegate:Field @delegate:Prop
val propertyWithCustomGetter: Int
get() = 5
}
class WithPrimaryConstructor(@delegate:Field @delegate:Prop val a: String,
@param:Field @param:Prop val b: String)
fun foo(@delegate:Field @delegate:Prop x: Int) = x