pub fn new(r: &'arena T) -> Ref<'arena, T> {
        Ref {
            ptr: AtomicPtr::new(r as *const T as *mut T),
            _lifetime: PhantomData,
        }
    }
/// Create a new `Ref` from an existing ordinary borrow with the
/// appropriate lifetime. The resulting `Ref` may not be re-set to any
/// other value.
Create a new `Ref` from an existing ordinary borrow with the
appropriate lifetime. The resulting `Ref` may not be re-set to any
other value.
Create a new ` Ref ` from an existing ordinary borrow with the appropriate lifetime . The resulting ` Ref ` may not be re - set to any other value .
pub fn new(r: &'arena T) -> Ref<'arena, T> {
        Ref {
            ptr: AtomicPtr::new(r as *const T as *mut T),
            _lifetime: PhantomData,
        }
    }
pub fn new ( r : & ' arena T ) -> Ref < ' arena , T > { Ref { ptr : AtomicPtr :: new ( r as * const T as * mut T ) , _lifetime : PhantomData , } }
Create a new `Ref` from an existing ordinary borrow with the
appropriate lifetime.
Create a new ` Ref ` from an existing ordinary borrow with the appropriate lifetime .
r
&'arena T
r
&'arena T