FIR: implement backing field references via 'field' synthetic variable
This commit is contained in:
@@ -0,0 +1,7 @@
|
||||
var myProperty = listOf(1, 2, 3)
|
||||
get() {
|
||||
return field + field
|
||||
}
|
||||
set(param) {
|
||||
field = param
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
FILE: backingField.kt
|
||||
public final var myProperty: R|kotlin/collections/List<kotlin/Int>| = R|kotlin/collections/listOf|<R|kotlin/Int|>(Int(1), Int(2), Int(3))
|
||||
public get(): R|kotlin/collections/List<kotlin/Int>| {
|
||||
^ F|/myProperty|.R|kotlin/collections/plus|<R|kotlin/Int|>(F|/myProperty|)
|
||||
}
|
||||
public set(param: R|kotlin/collections/List<kotlin/Int>|): R|kotlin/Unit| {
|
||||
F|/myProperty| = R|<local>/param|
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
import java.util.HashSet
|
||||
|
||||
val a: MutableSet<String>? = HashSet()
|
||||
|
||||
var b: MutableSet<String>? = null
|
||||
set(_) {
|
||||
field = HashSet()
|
||||
}
|
||||
|
||||
fun foo() {
|
||||
var c: MutableSet<String>? = null
|
||||
c = HashSet()
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
FILE: hashSet.kt
|
||||
public final val a: R|kotlin/collections/MutableSet<kotlin/String>|? = R|java/util/HashSet.HashSet|<R|kotlin/Any|?>()
|
||||
public get(): R|kotlin/collections/MutableSet<kotlin/String>|?
|
||||
public final var b: R|kotlin/collections/MutableSet<kotlin/String>|? = Null(null)
|
||||
public get(): R|kotlin/collections/MutableSet<kotlin/String>|?
|
||||
public set(_: R|kotlin/collections/MutableSet<kotlin/String>|?): R|kotlin/Unit| {
|
||||
F|/b| = R|java/util/HashSet.HashSet|()
|
||||
}
|
||||
public final fun foo(): R|kotlin/Unit| {
|
||||
lvar c: R|kotlin/collections/MutableSet<kotlin/String>|? = Null(null)
|
||||
R|<local>/c| = R|java/util/HashSet.HashSet|()
|
||||
}
|
||||
Reference in New Issue
Block a user