NoDrop

Trait NoDrop 

Source
pub trait NoDrop { }
Expand description

This trait marks types that don’t need dropping.

This trait is a best effort for modeling such a constraint. It is not implemented for all types that don’t need dropping.

Specifically &mut T types don’t implement NoDrop but definitely would if it were possible.

Every T where T: Copy and every [T] where T: NoDrop automatically implements NoDrop.

It is used as a bound for BumpBox’s into_ref and into_mut so you don’t accidentally omit a drop that does matter.

Implementations on Foreign Types§

Source§

impl NoDrop for str

Source§

impl NoDrop for CStr

Source§

impl NoDrop for OsStr

Available on crate feature std only.
Source§

impl NoDrop for Path

Available on crate feature std only.
Source§

impl<T: NoDrop> NoDrop for [T]

Implementors§

Source§

impl NoDrop for FixedBumpString<'_>

Source§

impl<A, const MIN_ALIGN: usize, const UP: bool, const GUARANTEED_ALLOCATED: bool, const DEALLOCATES: bool> NoDrop for BumpScope<'_, A, MIN_ALIGN, UP, GUARANTEED_ALLOCATED, DEALLOCATES>

Source§

impl<T> NoDrop for BumpBox<'_, T>
where T: NoDrop,

Source§

impl<T: Copy> NoDrop for T

Source§

impl<T: NoDrop> NoDrop for FixedBumpVec<'_, T>