devela::_dep::bytemuck::allocation

Trait TransparentWrapperAlloc

pub trait TransparentWrapperAlloc<Inner>: TransparentWrapper<Inner>
where Inner: ?Sized,
{ // Provided methods fn wrap_vec(s: Vec<Inner>) -> Vec<Self> where Self: Sized { ... } fn wrap_box(s: Box<Inner>) -> Box<Self> { ... } fn wrap_rc(s: Rc<Inner>) -> Rc<Self> { ... } fn wrap_arc(s: Arc<Inner>) -> Arc<Self> { ... } fn peel_vec(s: Vec<Self>) -> Vec<Inner> where Self: Sized { ... } fn peel_box(s: Box<Self>) -> Box<Inner> { ... } fn peel_rc(s: Rc<Self>) -> Rc<Inner> { ... } fn peel_arc(s: Arc<Self>) -> Arc<Inner> { ... } }
Available on crate feature dep_bytemuck only.
Expand description

An extension trait for TransparentWrapper and alloc types.

Provided Methods§

fn wrap_vec(s: Vec<Inner>) -> Vec<Self>
where Self: Sized,

Convert a vec of the inner type into a vec of the wrapper type.

fn wrap_box(s: Box<Inner>) -> Box<Self>

Convert a box to the inner type into a box to the wrapper type.

fn wrap_rc(s: Rc<Inner>) -> Rc<Self>

Convert an Rc to the inner type into an Rc to the wrapper type.

fn wrap_arc(s: Arc<Inner>) -> Arc<Self>

Convert an Arc to the inner type into an Arc to the wrapper type.

fn peel_vec(s: Vec<Self>) -> Vec<Inner>
where Self: Sized,

Convert a vec of the wrapper type into a vec of the inner type.

fn peel_box(s: Box<Self>) -> Box<Inner>

Convert a box to the wrapper type into a box to the inner type.

fn peel_rc(s: Rc<Self>) -> Rc<Inner>

Convert an Rc to the wrapper type into an Rc to the inner type.

fn peel_arc(s: Arc<Self>) -> Arc<Inner>

Convert an Arc to the wrapper type into an Arc to the inner type.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

§

impl<I, T> TransparentWrapperAlloc<I> for T
where T: TransparentWrapper<I> + ?Sized, I: ?Sized,