Files
kotlin-fork/compiler/tests-spec/testData/codegen/box/templates/identifiers/setter.kt
T
2018-10-03 13:49:30 +03:00

36 lines
789 B
Kotlin
Vendored

<!DIRECTIVES("HELPERS: REFLECT")!>
class A {
var x1: String = "100"
set(<!ELEMENT(1)!>) {
field = "$<!ELEMENT(1)!> 10"
}
}
object B {
var x2: String = "101"
set(<!ELEMENT(2)!>) = kotlin.Unit
}
var x3: String = "102"
set(<!ELEMENT(3)!>) {
field = "${<!ELEMENT(3)!>} 11"
}
fun box(): String? {
val a = A()
a.x1 = "0"
B.x2 = "1"
x3 = "2"
if (a.x1 != "0 10") return null
if (B.x2 != "101") return null
if (x3 != "2 11") return null
if (!checkSetterParameterName(A::x1, "<!ELEMENT_VALIDATION(1)!>")) return null
if (!checkSetterParameterName(B::x2, "<!ELEMENT_VALIDATION(2)!>")) return null
if (!checkSetterParameterName(::x3, "<!ELEMENT_VALIDATION(3)!>")) return null
return "OK"
}