### What it does Suggests alternatives for useless applications of `?` in terminating expressions ### Why is this bad? There's no reason to use `?` to short-circuit when execution of the body will end there anyway. ### Example ``` struct TO { magic: Option, } fn f(to: TO) -> Option { Some(to.magic?) } struct TR { magic: Result, } fn g(tr: Result) -> Result { tr.and_then(|t| Ok(t.magic?)) } ``` Use instead: ``` struct TO { magic: Option, } fn f(to: TO) -> Option { to.magic } struct TR { magic: Result, } fn g(tr: Result) -> Result { tr.and_then(|t| t.magic) } ```