use super::*;
use CuDataType;
#[derive(Debug)]
pub struct CuVectorPtr<T: CuDataType> {
pub(crate) deref: CuVectorDeref<T>,
}
impl<T: CuDataType> CuVectorPtr<T> {
#[inline]
pub fn len(&self) -> usize { self.deref.len as usize }
#[inline]
pub unsafe fn deref(&self) -> &CuVectorDeref<T> {
&self.deref
}
}
#[derive(Debug)]
pub struct CuVectorMutPtr<T: CuDataType> {
pub(crate) deref: CuVectorDeref<T>,
}
impl<T: CuDataType> CuVectorMutPtr<T> {
#[inline]
pub fn len(&self) -> usize { self.deref.len as usize }
#[inline]
pub unsafe fn deref(&self) -> &CuVectorDeref<T> {
&self.deref
}
#[inline]
pub unsafe fn deref_mut(&mut self) -> &mut CuVectorDeref<T> {
&mut self.deref
}
}