PHondogo
02/15/2024, 7:42 AMopen sealed class HistoryItem( // make it open to omit adding additional class. Something like: class StdHistoryItem(...) : HistoryItem(...)
val ts: Long,
val info: String
) {
open fun log() {
println("[$ts] $info")
}
}
class WithContextHistoryItem(
ts: Long,
info: String,
context: Any
) : HistoryItem(ts, info) {
override fun log() {
println("[$ts] $info ($context)")
}
}
fun main() {
val items = listOf( HistoryItem(1, "a"), WithContextHistoryItem(2, "b", "c") )
...
}
Klitos Kyriacou
02/15/2024, 9:23 AMPHondogo
02/15/2024, 9:31 AMKlitos Kyriacou
02/15/2024, 9:40 AMstantronic
02/15/2024, 4:23 PMPHondogo
02/15/2024, 5:39 PM