[][src]Struct alloc_compose::Segregate

pub struct Segregate<Small, Large, const THRESHOLD: usize> {
    pub small: Small,
    pub large: Large,
}

Dispatches calls to AllocRef between two allocators depending on the size allocated.

All allocations smaller than or equal to threshold will be dispatched to Small. The others will go to Large.

Fields

small: Smalllarge: Large

Trait Implementations

impl<Small, Large, const THRESHOLD: usize> AllocAll for Segregate<Small, Large, THRESHOLD> where
    Small: AllocAll,
    Large: AllocAll
[src]

fn dealloc_all(&mut self)[src]

Deallocates all the memory the allocator had allocated.

fn capacity(&self) -> usize[src]

Returns the total capacity available in this allocator.

fn capacity_left(&self) -> usize[src]

Returns the free capacity left for allocating.

impl<Small, Large, const THRESHOLD: usize> AllocRef for Segregate<Small, Large, THRESHOLD> where
    Small: AllocRef,
    Large: AllocRef
[src]

impl<Small: Clone, Large: Clone, const THRESHOLD: usize> Clone for Segregate<Small, Large, THRESHOLD>[src]

impl<Small: Copy, Large: Copy, const THRESHOLD: usize> Copy for Segregate<Small, Large, THRESHOLD>[src]

impl<Small: Debug, Large: Debug, const THRESHOLD: usize> Debug for Segregate<Small, Large, THRESHOLD>[src]

impl<Small, Large, const THRESHOLD: usize> Owns for Segregate<Small, Large, THRESHOLD> where
    Small: Owns,
    Large: Owns
[src]

Auto Trait Implementations

impl<Small, Large, const THRESHOLD: usize> Send for Segregate<Small, Large, THRESHOLD> where
    Large: Send,
    Small: Send

impl<Small, Large, const THRESHOLD: usize> Sync for Segregate<Small, Large, THRESHOLD> where
    Large: Sync,
    Small: Sync

impl<Small, Large, const THRESHOLD: usize> Unpin for Segregate<Small, Large, THRESHOLD> where
    Large: Unpin,
    Small: Unpin

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.