#[repr(C)]pub struct DequePayload {
pub element_descriptor: *const TypeDescriptor,
pub items: VecDeque<GcRef>,
}Expand description
The Deque[T] payload: the element descriptor plus a growable VecDeque.
VecDeque (not Vec) so push_front/pop_front are O(1) amortized.
Both fields are Drop, so DEQUE’s drop_value releases them on sweep.
Fields§
§element_descriptor: *const TypeDescriptorThe descriptor for every element, or null for “not told yet” —
VecPayload::element_descriptor’s contract exactly. Read it through
[ElementSeq::element].
items: VecDeque<GcRef>The elements. A VecDeque so both ends are cheap to mutate.
Auto Trait Implementations§
impl !RefUnwindSafe for DequePayload
impl !Send for DequePayload
impl !Sync for DequePayload
impl !UnwindSafe for DequePayload
impl Freeze for DequePayload
impl Unpin for DequePayload
impl UnsafeUnpin for DequePayload
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more