mirror of
https://github.com/jlengrand/kotlin.git
synced 2026-05-16 15:53:55 +00:00
24 lines
482 B
Kotlin
Vendored
24 lines
482 B
Kotlin
Vendored
interface Named {
|
|
abstract fun getName() : String;
|
|
}
|
|
|
|
interface MemberDescriptor : Named {}
|
|
|
|
interface ClassifierDescriptor : Named {}
|
|
|
|
interface ClassDescriptor : MemberDescriptor, ClassifierDescriptor {}
|
|
|
|
class ClassDescriptorImpl : ClassDescriptor {
|
|
override fun getName(): String {
|
|
return "OK"
|
|
}
|
|
}
|
|
|
|
class A(val descriptor : ClassDescriptor) {
|
|
val result : String = descriptor.getName()
|
|
}
|
|
|
|
fun box(): String {
|
|
return A(ClassDescriptorImpl()).result
|
|
}
|