▲ | andyferris 5 days ago | |
I think I'm lost. If I give a mutable reference to a function... I can't access it (even read it) until it returns, no? What is different? | ||
▲ | zbentley 4 days ago | parent [-] | |
Let's say a function "foo" calls "fn bar(_: &mut T) -> ()". When passing a mutable reference, the lifetime of the object is largely decided by "foo" (with some caveats). Now, let's say that "foo" instead calls "fn bar(_: T) -> T". When passing the object itself, the lifetime is largely decided/decide-able by "bar". |