pub fn as_ptr_at_offset<T>(&self, offset: usize) -> Option<&mut T> {
        // mark dirty, under the presumption that the caller will write
        self.dirty.store(true, Ordering::Relaxed);

        self.ptr.map(|rpu| {
            let stride = _stride(::std::mem::size_of::<T>(),
                                 self.element_alignment as usize);
            unsafe {
                let rpt = rpu.offset((offset * stride) as isize) as *mut T;
                &mut *rpt
            }
        })
    }
// offset is measured in "count of T's plus alignment padding", not in bytes.
offset is measured in "count of T's plus alignment padding", not in bytes.
offset is measured in " count of T ' s plus alignment padding " not in bytes .
pub fn as_ptr_at_offset<T>(&self, offset: usize) -> Option<&mut T> {
        // mark dirty, under the presumption that the caller will write
        self.dirty.store(true, Ordering::Relaxed);
        self.ptr.map(|rpu| {
            let stride = _stride(::std::mem::size_of::<T>(),
                                 self.element_alignment as usize);
            unsafe {
                let rpt = rpu.offset((offset * stride) as isize) as *mut T;
                &mut *rpt
            }
        })
    }
pub fn as_ptr_at_offset < T > ( & self , offset : usize ) -> Option < & mut T > { // mark dirty, under the presumption that the caller will write self . dirty . store ( true , Ordering :: Relaxed ) ; self . ptr . map ( | rpu | { let stride = _stride ( :: std :: mem :: size_of :: < T > ( ) , self . element_alignment as usize ) ; unsafe { let rpt = rpu . offset ( ( offset * stride ) as isize ) as * mut T ; & mut * rpt } } ) }
offset is measured in "count of T's plus alignment padding", not in bytes.
offset is measured in " count of T ' s plus alignment padding " not in bytes .
&self
offset
usize
&self
offset
usize