mbonnin
11/04/2020, 10:41 AMinterface Node {
val children: List<Node>
}
interface Named
data class Cat(val name: String): Node, Named {
override val children = emptyList<Node>()
}
data class Dog(val name: String): Node, Named {
override val children = emptyList<Node>()
}
class Farm: Node {
// Property type is List<Any> which is not a subtype type of overridden public abstract val children: List<Node>
override val children = listOf(Cat("Maru")) + listOf(Dog("Milou"))
}