commits
options3 is a little harder to grok: the key is to understand that pattern
matching is a form of assignment, so matching on optional_point to Some(p)
actually moves the Point out of the Option into the variable `p`.
Of the two solutions, I think I'd prefer matching on &optional_point because it
feels more explicit that we are borrowing during the Some(p) pattern matching.
options3 is a little harder to grok: the key is to understand that pattern
matching is a form of assignment, so matching on optional_point to Some(p)
actually moves the Point out of the Option into the variable `p`.
Of the two solutions, I think I'd prefer matching on &optional_point because it
feels more explicit that we are borrowing during the Some(p) pattern matching.