I have an item with variable datePurchased
, which can be null. Based on purchase date, I generate a label. When I check if datePurchased is null, in else branch I still have to check for null. It says that smart cast is impossible, because it's a mutable property.
Here's what I've tried so far:
if (datePurchased == null) {
""
} else {
if (datePurchased.isToday()) {//error here
}
}
when {
datePurchased == null -> {
}
datePurchased.isToday() -> {//smart cast bla bla mutable bla bla
datePurchased?.isToday() -> {//expected Boolean, got Boolean?
datePurchased?.isToday()?:false -> {//all good, but does not look nice, since datePurchased can't be null here
}
else -> {
}
}