pub fn first_edge(self) -> Handle<Self, marker::Edge> {
        unsafe { Handle::new_edge(self, 0) }
    }
Temporarily takes out another, mutable reference to the same node. Beware, as
this method is very dangerous, doubly so since it may not immediately appear
dangerous.

Becau
benchmarks/haystacks/code/rust-library.rs