5 ms·
> It really depends on what the meaning of None is. Exactly. This will generally be application specific so we can't choose The One Right Definition for adding
by gnosek 6y ago
> It really depends on what the meaning of None is.
Exactly. This will generally be application specific so we can't choose The One Right Definition for adding `Option<i32>`s.
> Yours make sense if it means "zero", but that's far less useful.
Not in my experience but I agree there are different situations. Personally, I'd default to `Option<i32>::None` meaning "no number there, so just skip it"[1] and prefer `Result<i32, E>::Err` to denote "there should be a number here but we don't have one", which would behave like a SQL NULL (propagate in all calculations).
1. What's the length of data in a header-only packet? I wouldn't say it's zero, especially when trying to fit a read() like API on top of a framed protocol (read() returning Ok(0) marks the end of file).