Comment Comment by teho In Dart if you want to narrow down a nullable final class variable, it is not enough to doif (value == null) { // value is still nullable here }instead you need to first capture the valuefinal value = this.value if (value == null) { // value is non-null }Swift's guard and if let syntax seems way nicer here. In swift, it's also nice to destructure nested nullable values using if let.if let value = object.object?.value { // value is non null }In dart you'd need to first assign this into a local variable and then do the null check which is unnecessarily verbose. parent teho 2 years ago
if (value == null) { // value is still nullable here }
instead you need to first capture the value
final value = this.value if (value == null) { // value is non-null }
Swift's guard and if let syntax seems way nicer here. In swift, it's also nice to destructure nested nullable values using if let.
if let value = object.object?.value { // value is non null }
In dart you'd need to first assign this into a local variable and then do the null check which is unnecessarily verbose.