How would a self-referential object work in Rust in that case?
The move or copy constructor could not be a simple memcpy.
The self-reference would point to the old object. See this for an example: http://ideone.com/sEFtbN
The self-reference would point to the old object. See this for an example: http://ideone.com/sEFtbN
(Intrusive datastructures on the heap are doable with some tricks.)
They're not very essential so it works out.