Delete Hashable, pull up its members to Any

Extensions on nullable types remain in Library.kt

 #KT-1741 Obsolete
 #KT-2805 Obsolete
 #KT-1365 Fixed
 #KT-4517 In Progress
This commit is contained in:
Alexander Udalov
2014-02-04 19:54:06 +04:00
parent 9efdd136ba
commit ec30d52978
46 changed files with 210 additions and 416 deletions
@@ -1,13 +1,5 @@
class A() {
fun equals(<warning>a</warning> : Any?) : Boolean = false
}
class B() {
fun equals(<warning>a</warning> : Any?) : Boolean? = false
}
class C() {
fun equals(<warning>a</warning> : Any?) : Int = 0
override fun equals(<warning>a</warning> : Any?) : Boolean = false
}
fun f(): Unit {
@@ -22,8 +14,6 @@ fun f(): Unit {
x != 1
<error>A() == 1</error>
B() <error>==</error> 1
C() <error>==</error> 1
<error>x === "1"</error>
<error>x !== "1"</error>
@@ -4,6 +4,5 @@ class Test {
}
}
// EXIST: Any, Nothing, Unit, Int, Number
// EXIST: Array, Hashable
// EXIST: Any, Nothing, Unit, Int, Number, Array
// EXIST_JAVA_ONLY: Math, Thread
@@ -3,6 +3,5 @@ class Test : <caret> {
}
}
// EXIST: Any, Nothing, Unit, Int, Number
// EXIST: Array, Hashable
// EXIST: Any, Nothing, Unit, Int, Number, Array
// EXIST_JAVA_ONLY: Math, Thread
@@ -13,8 +13,7 @@ deprecated("Use A instead") fun MyClass.contains(i: MyClass): Boolean { i.i; ret
deprecated("Use A instead") fun MyClass.plusAssign(i: MyClass) { i.i }
deprecated("Use A instead") fun MyClass.equals(i: Any?): Boolean { i == null; return false }
deprecated("Use A instead") fun MyClass.compareTo(i: MyClass): Int { return i.i }
deprecated("Use A instead") fun MyClass.rangeTo(i: MyClass): IntRange { return IntRange(i.i, i.i) }
fun test() {
val x1 = MyClass()
@@ -32,9 +31,7 @@ fun test() {
x1 <warning descr="'fun plusAssign(i: MyClass)' is deprecated. Use A instead">+=</warning> x2
x1 <warning descr="'fun equals(i: jet.Any?)' is deprecated. Use A instead">==</warning> x2
x1 <warning descr="'fun equals(i: jet.Any?)' is deprecated. Use A instead">!=</warning> x2
x1 <warning descr="'fun compareTo(i: MyClass)' is deprecated. Use A instead">></warning> x2
x1<warning descr="'fun rangeTo(i: MyClass)' is deprecated. Use A instead">..</warning>x2
}
// NO_CHECK_INFOS
@@ -1,5 +1,5 @@
// "class org.jetbrains.jet.plugin.quickfix.AddFunctionParametersFix" "false"
// ERROR: Too many arguments for public fun jet.Any?.equals(other: jet.Any?): jet.Boolean defined in jet
// ERROR: Too many arguments for public open fun equals(other: jet.Any?): jet.Boolean defined in jet.Any
fun f(d: Any) {
d.equals("a", <caret>"b")
+1 -1
View File
@@ -1,2 +1,2 @@
val x = 5.<ref>equals(5)
//jet/Numbers.kt:equals
//jet/Any.kt:equals