[−]Struct symbolic::debuginfo::pdb::pdb::FrameData
Frame data for a code block.
Fields
ty: FrameType
Compiler-specific frame type.
code_start: PdbInternalRva
Relative virtual address of the start of the code block.
Note that this address is internal to the PDB. To convert this to an actual Rva
, use
to_rva
.
code_size: u32
Size of the code block covered by this frame data in bytes.
locals_size: u32
Size of local variables pushed on the stack in bytes.
params_size: u32
Size of parameters pushed on the stack in bytes.
prolog_size: u16
Number of bytes of prologue code in the block.
saved_regs_size: u16
Size of saved registers pushed on the stack in bytes.
max_stack_size: Option<u32>
The maximum number of bytes pushed on the stack.
has_structured_eh: bool
Indicates that structured exception handling is in effect.
has_cpp_eh: bool
Indicates that C++ exception handling is in effect.
is_function_start: bool
Indicates that this frame is the start of a function.
uses_base_pointer: bool
Indicates that this function uses the EBP register.
program: Option<StringRef>
A program string allowing to reconstruct register values for this frame.
The program string is a sequence of macros that is interpreted in order to establish the
prologue. For example, a typical stack frame might use the program string "$T0 $ebp = $eip $T0 4 + ^ = $ebp $T0 ^ = $esp $T0 8 + ="
. The format is reverse polish notation, where the
operators follow the operands. T0
represents a temporary variable on the stack.
Note that the program string is specific to the CPU and to the calling convention set up for the function represented by the current stack frame.
Trait Implementations
impl Clone for FrameData
pub fn clone(&self) -> FrameData
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Debug for FrameData
impl<'_> From<&'_ NewFrameData> for FrameData
impl<'_> From<&'_ OldFrameData> for FrameData
Auto Trait Implementations
impl RefUnwindSafe for FrameData
[src]
impl Send for FrameData
[src]
impl Sync for FrameData
[src]
impl Unpin for FrameData
[src]
impl UnwindSafe for FrameData
[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,