pub enum DirectValueResult {
Constant(i64),
ImplicitValue(Vec<u8>),
RegisterValue(u16),
ComputedValue {
steps: Vec<ComputeStep>,
result_size: MemoryAccessSize,
},
}Expand description
Direct value results - expression produces the variable value directly
Variants§
Constant(i64)
Literal constant from DWARF expression (DW_OP_lit*, DW_OP_const*)
ImplicitValue(Vec<u8>)
Implicit value embedded in DWARF (DW_OP_implicit_value)
RegisterValue(u16)
Register contains the variable value directly (DW_OP_reg*)
ComputedValue
Computed value from expression (DW_OP_stack_value) This is a full expression that computes the value
Fields
§
steps: Vec<ComputeStep>Expression steps (stack-based computation)
§
result_size: MemoryAccessSizeExpected result type size
Implementations§
Source§impl DirectValueResult
impl DirectValueResult
Sourcepub fn is_compile_time_constant(&self) -> bool
pub fn is_compile_time_constant(&self) -> bool
Check if this is a simple value that can be computed at compile time
Trait Implementations§
Source§impl Clone for DirectValueResult
impl Clone for DirectValueResult
Source§fn clone(&self) -> DirectValueResult
fn clone(&self) -> DirectValueResult
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 DirectValueResult
impl Debug for DirectValueResult
Source§impl Display for DirectValueResult
impl Display for DirectValueResult
Source§impl PartialEq for DirectValueResult
impl PartialEq for DirectValueResult
impl StructuralPartialEq for DirectValueResult
Auto Trait Implementations§
impl Freeze for DirectValueResult
impl RefUnwindSafe for DirectValueResult
impl Send for DirectValueResult
impl Sync for DirectValueResult
impl Unpin for DirectValueResult
impl UnwindSafe for DirectValueResult
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more