Make `??` and `throw` paintings in combination
Now and again, it might be great, if it is advisable to use `throw` with `??` like so (it is a minimum instance, right here a `!` would paintings, too, until you need a customized exception and/or error message):
int foo(int? bar) => bar ?? throw ‘…’;
Sadly, that is invalid Dart. So you wish to have to do that:
int foo(int? bar) {
if (bar == null) throw ‘…’;
go back bar;
}
If you happen to suppose that is bulky, I latterly spotted that you’ll wrap `throw` in a serve as to make the above instance paintings as anticipated:
By no means throwing(String message) => throw Exception(message);
int foo(int? bar) => bar ?? throwing(‘…’);
(I am lovely certain there’s [an issue](https://github.com/dart-lang/language/issues) for including this selection to Dart, however I am not able to search out it.)
View Reddit by means of eibaan – View Supply