d188de3086
Members declared in interface or overriding members declared in super-interfaces can be implemented by delegation even if they override members declared in super-class (NB for interface this can be only 'kotlin.Any').
18 lines
304 B
Kotlin
Vendored
18 lines
304 B
Kotlin
Vendored
interface IBase {
|
|
override fun toString(): String
|
|
}
|
|
|
|
interface IDerived : IBase
|
|
|
|
object BaseImpl : IBase {
|
|
override fun toString(): String = "A"
|
|
}
|
|
|
|
object DerivedImpl : IDerived {
|
|
override fun toString(): String = "A"
|
|
}
|
|
|
|
class Test1 : IBase by BaseImpl
|
|
|
|
class Test2 : IDerived by DerivedImpl
|