JS backend: added identityEquals support.

This commit is contained in:
Erokhin Stanislav
2013-08-12 16:59:24 +04:00
parent 48cd8f4df4
commit 3b5d5a4a95
6 changed files with 126 additions and 6 deletions
@@ -0,0 +1,21 @@
package foo
class X
fun box(): String {
val a = X()
val b = X()
if (!a.identityEquals(a)) return "a !== a"
if (a.identityEquals(b)) return "X() === X()"
val c = a
if (!c.identityEquals(a)) return "c = a; c !== a"
if (X() identityEquals a) return "X() identityEquals a"
val t = !(X() identityEquals a)
if (!t) return "t = !(X() identityEquals a); t == false"
val f = !!(X() identityEquals a)
if (f) return "f = !!(X() identityEquals null); f == true"
return "OK";
}
@@ -0,0 +1,14 @@
package foo
fun box(): String {
if (!null.identityEquals(null)) return "null !== null"
if (!("ab" identityEquals "ab")) return "ab !== ab"
if (("ab" identityEquals "a")) return "ab === a"
if ("0" identityEquals 0) return "'0' === 0"
if (!(0 identityEquals 0)) return "0 !== 0"
if (0 identityEquals 1) return "0 === 1"
return "OK";
}