This crate brings out references to Rust, this crate has no_std
support
Out reference never read values behind the reference
use *;
let mut x = 0;
let mut out_x: = x.out;
out_x.set;
assert_eq!;
Note that setting a value does not drop the old value, as that would require at least 1 read of the value behind the pointer
So, the code below leaks the vector
use *;
let mut x = vec!;
let mut out_x: = x.out;
out_x.set;
assert_eq!;