orx_imp_vec/common_traits/clone.rs
1use crate::ImpVec;
2use orx_pinned_vec::PinnedVec;
3
4impl<T, P> Clone for ImpVec<T, P>
5where
6 P: PinnedVec<T> + Clone,
7{
8 fn clone(&self) -> Self {
9 let pinned_vec = unsafe { &mut *self.pinned_vec.get() }.clone();
10 Self {
11 pinned_vec: pinned_vec.into(),
12 phantom: self.phantom,
13 }
14 }
15}