#[repr(C)]pub struct StackValue {
pub slot0: u64,
pub slot1: u64,
pub slot2: u64,
pub slot3: u64,
pub slot4: u64,
}Expand description
A 40-byte stack value, layout-compatible with LLVM’s %Value type.
This matches %Value = type { i64, i64, i64, i64, i64 } in the generated IR.
The size matches Rust’s Value enum with #[repr(C)].
Fields§
§slot0: u64First slot: discriminant (0=Int, 1=Float, 2=Bool, 3=String, etc.)
slot1: u64Second slot: primary payload (i64 value for Int, bool for Bool, etc.)
slot2: u64Third slot: type-specific data
slot3: u64Fourth slot: type-specific data
slot4: u64Fifth slot: type-specific data (for largest variant)
Trait Implementations§
Source§impl Clone for StackValue
impl Clone for StackValue
Source§fn clone(&self) -> StackValue
fn clone(&self) -> StackValue
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for StackValue
impl Debug for StackValue
Source§impl Default for StackValue
impl Default for StackValue
Source§fn default() -> StackValue
fn default() -> StackValue
Returns the “default value” for a type. Read more
impl Copy for StackValue
Auto Trait Implementations§
impl Freeze for StackValue
impl RefUnwindSafe for StackValue
impl Send for StackValue
impl Sync for StackValue
impl Unpin for StackValue
impl UnwindSafe for StackValue
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