pub union ValuePayload {
/* private fields */
}Expand description
Payload half of a Value word: either the value’s bytes inline or a
thin pointer to an owned Box<T> (exclusive heaps) or a shared Arc<T>
(shared heaps), as the type’s descriptor dictates.
Inline and pointer domains never mix for a given TypeDescriptor.
Fields are private so safe code cannot forge payloads: every payload
enters a word through store_inline (inline bytes) or the
Value::mint_heap / Value::mint_heap_shared / Value::mint_inline
choke points, where the Send + Sync + 'static bounds are enforced.
External code observes payload bits through Value::inline_bits and
Value::heap_ptr.
Trait Implementations§
Source§impl Clone for ValuePayload
impl Clone for ValuePayload
impl Copy for ValuePayload
impl Send for ValuePayload
impl Sync for ValuePayload
Auto Trait Implementations§
impl Freeze for ValuePayload
impl RefUnwindSafe for ValuePayload
impl Unpin for ValuePayload
impl UnsafeUnpin for ValuePayload
impl UnwindSafe for ValuePayload
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