1
2
3
4
5
6
7
8
9
10
use crate::{ConcurrentPinnedVec, PinnedVec};

/// A pinned vector which can be wrapped into a concurrent pinned vector.
pub trait IntoConcurrentPinnedVec<T>: PinnedVec<T> {
    /// Type of the concurrent pinned vector wrapper.
    type ConPinnedVec: ConcurrentPinnedVec<T, P = Self>;

    /// Converts the pinned vector into its concurrent wrapper.
    fn into_concurrent(self) -> Self::ConPinnedVec;
}