KT-4107 Data objects
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
// FIR_IDENTICAL
|
||||
// LANGUAGE: +DataObjects
|
||||
|
||||
data object Override {
|
||||
<!DATA_OBJECT_CUSTOM_EQUALS_OR_HASH_CODE!>override<!> fun equals(other: Any?): Boolean {
|
||||
return true
|
||||
}
|
||||
|
||||
<!DATA_OBJECT_CUSTOM_EQUALS_OR_HASH_CODE!>override<!> fun hashCode(): Int {
|
||||
return 1
|
||||
}
|
||||
}
|
||||
|
||||
open class Base {
|
||||
open fun hashCode(x: Int) = x
|
||||
}
|
||||
|
||||
data object NoOverride: Base() {
|
||||
fun equals(other: Any?, tag: Int): Boolean {
|
||||
return true
|
||||
}
|
||||
|
||||
fun hashCode(param: String): Int {
|
||||
return 1
|
||||
}
|
||||
|
||||
override fun hashCode(x: Int) = x + 1
|
||||
}
|
||||
|
||||
open class Super {
|
||||
override fun equals(other: Any?): Boolean {
|
||||
return super.equals(other)
|
||||
}
|
||||
|
||||
override fun hashCode(): Int {
|
||||
return 1
|
||||
}
|
||||
}
|
||||
|
||||
data object OverridenInSuper: Super() {
|
||||
<!DATA_OBJECT_CUSTOM_EQUALS_OR_HASH_CODE!>override<!> fun equals(other: Any?): Boolean {
|
||||
return super.equals(other)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user