Enum rustc::mir::interpret::Value
[−]
[src]
pub enum Value {
ByRef(PtrAndAlign),
ByVal(PrimVal),
ByValPair(PrimVal, PrimVal),
}🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
A Value represents a single self-contained Rust value.
A Value can either refer to a block of memory inside an allocation (ByRef) or to a primitve
value held directly, outside of any allocation (ByVal). For ByRef-values, we remember
whether the pointer is supposed to be aligned or not (also see Place).
For optimization of a few very common cases, there is also a representation for a pair of
primitive values (ByValPair). It allows Miri to avoid making allocations for checked binary
operations and fat pointers. This idea was taken from rustc's trans.
Variants
ByRef(PtrAndAlign)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
ByVal(PrimVal)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
ByValPair(PrimVal, PrimVal)🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Methods
impl<'a, 'tcx: 'a> Value[src]
pub fn by_ref(ptr: Pointer) -> Self[src]
🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Trait Implementations
impl Clone for Value[src]
fn clone(&self) -> Value[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)1.0.0[src]
Performs copy-assignment from source. Read more