On Tuesday, 3 March 2015 at 09:05:46 UTC, Walter Bright wrote:
On 3/2/2015 9:58 PM, weaselcat wrote:
Borrowing 'a' from a struct would make the parent struct immutable during the
borrow scope of 'a', I believe.

Right, now consider that struct is a leaf in a complex graph of data structures.

Rust has several pointer types, so what is gonna happen depend on the pointer type. However, either the entry in the graph you have owns 'a', in which case it can be disabled as only one owner of a exists, so there is no problem tracking it, or the thing is borrowed, in which case you can have multiple path to 'a' but you cannot borrow yourself (unless it is immutable).

Reply via email to