Francesc
sealed interface
sealed interface DeviceType { object Phone : DeviceType sealed interface Tablet : DeviceType { object Small : Tablet object Large : Tablet } } val deviceType: DeviceType = DeviceType.Phone fun foo() { when (deviceType) { DeviceType.Phone -> println("Phone") DeviceType.Tablet -> println("Tablet") <-- does not compile } }
Ejimax
when (deviceType) { DeviceType.Phone -> println("Phone") is DeviceType.Tablet -> println("Tablet") }
A modern programming language that makes developers happier.