New rule! API documentation writers. Does it return null or throw an exception? How does it behave if the problem is unsolvable? What order does the array items appear in? If undefined, please write that it's undefined.
Conversation
Ah, I am so happy to be writing Swift nowadays. You can never return null unless you specifically say so in your type, and you have to always have code that handles the nulls.
Still, documenting all the possible reasons something might return null would still be great.
1
2
You can have your cake and eat it too - you just explicitly 'opt-in' to nullability when you want it. In some languages you call it `T?`, in others it's `Option<T>`. Swift, Rust, Kotlin, C# 8.0, Haskell, etc. all have this lovely feature - thankfully it's becoming more popular!
Other languages have a `Result<T, E>` for expected errors, which behaves in much the same way - you can just pass an error value along side.
The <T> makes me think of generic classes/method (but maybe it means something else in other languages). But yeah, looks like C# 8.0 is indeed getting better ways to control whether things can be null or not, which is great!
1
It is a generic type, it means it’s a value of type T, or possibly null.
1
Show replies


