Let Me Ask You a Question
That code in the previous lesson looks a little repetitive, doesn’t it? Match on an Option
, check if the option is None
, if it’s None
, then return None
. If it’s Some
, then evaluate to that value. Wouldn’t it be great if there was a nice, easy way to capture that idea in a much shorter amount of code?
Fortunately, there is! This idea of "None
propagation" is so common in Rust that it’s captured in a single character: ?
. Observe: