Data Inflow: Support delegated assignments
#KT-19089 Fixed
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
// FLOW: IN
|
||||
|
||||
class Delegate {
|
||||
private var _value: String = ""
|
||||
operator fun getValue(thisRef: Any?, property: KProperty<*>) = _value
|
||||
operator fun setValue(thisRef: Any?, property: KProperty<*>, value: String) {
|
||||
_value = value
|
||||
}
|
||||
}
|
||||
|
||||
class AClass(name1: String){
|
||||
var name by Delegate()
|
||||
init {
|
||||
name = name1
|
||||
}
|
||||
|
||||
fun uses(){
|
||||
name = "bye"
|
||||
println("Now my name is '$name'")
|
||||
}
|
||||
}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
val a = AClass("hello")
|
||||
println("My name is '${a.<caret>name}'")
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
25 println("My name is '${a.<bold>name</bold>}'")
|
||||
12 var <bold>name by Delegate()</bold>
|
||||
5 operator fun <bold>getValue(thisRef: Any?, property: KProperty<*>) = _value</bold>
|
||||
5 operator fun getValue(thisRef: Any?, property: KProperty<*>) = <bold>_value</bold>
|
||||
4 private var <bold>_value: String = ""</bold>
|
||||
4 private var _value: String = <bold>""</bold>
|
||||
7 _value = <bold>value</bold>
|
||||
6 operator fun setValue(thisRef: Any?, property: KProperty<*>, <bold>value: String</bold>) {
|
||||
14 name = <bold>name1</bold>
|
||||
11 class AClass(<bold>name1: String</bold>){
|
||||
24 val a = AClass(<bold>"hello"</bold>)
|
||||
18 name = <bold>"bye"</bold>
|
||||
@@ -0,0 +1,26 @@
|
||||
// FLOW: IN
|
||||
|
||||
class Delegate {
|
||||
private var _value: String = ""
|
||||
operator fun getValue(thisRef: Any?, property: KProperty<*>) = _value
|
||||
operator fun setValue(thisRef: Any?, property: KProperty<*>, value: String) {
|
||||
_value = value
|
||||
}
|
||||
}
|
||||
|
||||
class AClass(name1: String){
|
||||
var name by Delegate()
|
||||
init {
|
||||
name = name1
|
||||
}
|
||||
|
||||
fun uses(){
|
||||
name = "bye"
|
||||
println("Now my name is '$<caret>name'")
|
||||
}
|
||||
}
|
||||
|
||||
fun main(args: Array<String>) {
|
||||
val a = AClass("hello")
|
||||
println("My name is '${a.name}'")
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
19 println("Now my name is '$<bold>name</bold>'")
|
||||
12 var <bold>name by Delegate()</bold>
|
||||
5 operator fun <bold>getValue(thisRef: Any?, property: KProperty<*>) = _value</bold>
|
||||
5 operator fun getValue(thisRef: Any?, property: KProperty<*>) = <bold>_value</bold>
|
||||
4 private var <bold>_value: String = ""</bold>
|
||||
4 private var _value: String = <bold>""</bold>
|
||||
7 _value = <bold>value</bold>
|
||||
6 operator fun setValue(thisRef: Any?, property: KProperty<*>, <bold>value: String</bold>) {
|
||||
14 name = <bold>name1</bold>
|
||||
11 class AClass(<bold>name1: String</bold>){
|
||||
24 val a = AClass(<bold>"hello"</bold>)
|
||||
18 name = <bold>"bye"</bold>
|
||||
Reference in New Issue
Block a user