JS: refactor translation of callable references to top-level properties
This commit is contained in:
@@ -4,6 +4,9 @@ var x = 1
|
||||
|
||||
val y = 2
|
||||
|
||||
val z: Int
|
||||
get() = 3
|
||||
|
||||
fun box(): String {
|
||||
var refX = ::x
|
||||
assertEquals(1, refX.get())
|
||||
@@ -16,5 +19,9 @@ fun box(): String {
|
||||
assertEquals(2, refY.get())
|
||||
assertEquals("y", refY.name)
|
||||
|
||||
var refZ = ::z
|
||||
assertEquals(3, refZ.get())
|
||||
assertEquals("z", refZ.name)
|
||||
|
||||
return "OK"
|
||||
}
|
||||
|
||||
+3
-4
@@ -470,10 +470,9 @@
|
||||
};
|
||||
};
|
||||
|
||||
Kotlin.getCallableRefForTopLevelProperty = function(packageName, name, isVar) {
|
||||
var getFun = Function("p", "return function " + name + "() { return p['" + name + "']; }")(packageName);
|
||||
var setFun = isVar ? function(value) { packageName[name] = value; } : null;
|
||||
return getPropertyRefClass(getFun, "get", setFun, "set_za3rmp$", propertyRefClassMetadataCache.zeroArg);
|
||||
Kotlin.getCallableRefForTopLevelProperty = function(getter, setter, name) {
|
||||
var getFun = Function("getter", "return function " + name + "() { return getter(); }")(getter, setter);
|
||||
return getPropertyRefClass(getFun, "get", setter, "set_za3rmp$", propertyRefClassMetadataCache.zeroArg);
|
||||
};
|
||||
|
||||
Kotlin.getCallableRefForMemberProperty = function(name, isVar) {
|
||||
|
||||
Reference in New Issue
Block a user