1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
use imp_prelude::*; use DataClone; impl<S: DataClone, D: Clone> Clone for ArrayBase<S, D> { fn clone(&self) -> ArrayBase<S, D> { unsafe { let (data, ptr) = self.data.clone_with_ptr(self.ptr); ArrayBase { data: data, ptr: ptr, dim: self.dim.clone(), strides: self.strides.clone(), } } } } impl<S: DataClone + Copy, D: Copy> Copy for ArrayBase<S, D> {}