`when` should know when it's been exhaustive if it...
# language-proposals
b
when
should know when it's been exhaustive if it's evaluating a `sealed class`'s
KClass
. For instance:
Copy code
sealed class MySealedClass {
    class SubclassA: MySealedClass()
    class SubclassB(val date: Date): MySealedClass()
}

fun makeInstance(sealedClass: KClass<MySealedClass>): MySealedClass
    = when (sealedClass) {
        SubclassA::class -> SubclassA()
        SubclassB::class -> SubclassB(Date())
    }
Error:
Kotlin: 'when' expression must be exhaustive, add necessary 'else' branch
o
Thanks!