Skip to main content
Journey Uncommon Logo
JourneyUncommon
mediumKotlinsealed class hierarchiesSingle-choice MCQ

Consider a sealed interface `Expr` with subtypes. What does this code print?

sealed interface Expr data class Num(val v: Int) : Expr data class Add(val l: Expr, val r: Expr) : Expr fun eval(e: Expr): Int = when (e) { is Num -> e.v is Add -> eval(e.l) + eval(e.r) } fun main() { println(eval(Add(Num(3), Num(4)))) }