<p>I am writing Rust.</p><p>The code on the left compiles.</p><p>The code on the right does not compile. It produces the error on the righter right.</p><p>Why? how is it possible that rearranging code like this could make such a substantial difference?</p><p>My assumption is in a C-shaped languages expressions are executed from inner to outer. Neither of the types of the self. functions return a reference type.</p>