pub struct SBFrame {
    pub raw: SBFrameRef,
}
Expand description

One of the stack frames associated with a thread.

Fields

raw: SBFrameRef

The underlying raw SBFrameRef.

Implementations

Check whether or not this is a valid SBFrame value.

The zero-based stack frame index for this frame.

This can be used to locate adjacent frames in the thread’s stack frames.

Get the Canonical Frame Address for this stack frame.

This is the DWARF standard’s definition of a CFA, a stack address that remains constant throughout the lifetime of the function.

The program counter (PC) as an unsigned integer.

The stack pointer address as an unsigned integer.

The frame pointer address as an unsigned integer.

The program counter (PC) as a section offset address (SBAddress).

The symbol context for this frame’s current pc value.

The frame maintains this symbol context and adds information to it as needed. This helps avoid repeated lookups of the same information.

  • resolve_scope: Flags that specify what type of symbol context is needed by the caller. These flags have constants starting with SYMBOL_CONTEXT_ITEM_.

The SBModule for this stack frame.

The SBCompileUnit for this stack frame.

The SBFunction for this stack frame.

The SBSymbol for this stack frame.

Get the deepest block that contains the frame PC.

Get the appropriate function name for this frame. Inlined functions in LLDB are represented by blocks that have inlined function information, so just looking at the SBFunction or SBSymbol for a frame isn’t enough. This function will return the appropriate function, symbol or inlined function name for the frame.

This function returns:

  • the name of the inlined function (if there is one)
  • the name of the concrete function (if there is one)
  • the name of the symbol (if there is one)
  • None

See also is_inlined.

Return true if this frame represents an inlined function.

Evaluate an expression within the context of this frame.

Gets the lexical block that defines the stack frame. Another way to think of this is it will return the block that contains all of the variables for a stack frame. Inlined functions are represented as SBBlock objects that have inlined function information: the name of the inlined function, where it was called from. The block that is returned will be the first block at or above the block for the PC (SBFrame::block()) that defines the scope of the frame. When a function contains no inlined functions, this will be the top most lexical block that defines the function. When a function has inlined functions and the PC is currently in one of those inlined functions, this method will return the inlined block that defines this frame. If the PC isn’t currently in an inlined function, the lexical block that defines the function is returned.

source

pub fn line_entry(&self) -> Option<SBLineEntry>

The line table entry (SBLineEntry) for this stack frame.

The thread that is executing this stack frame.

The disassembly of this function, presented as a string.

The values for variables matching the specified options.

The values for all variables in this stack frame.

The values for the argument variables in this stack frame.

The values for the local variables in this stack frame.

The values for the static variables in this stack frame.

The values for the CPU registers for this stack frame.

The value for a particular register, if present.

The parent frame that invoked this frame, if available.

Trait Implementations

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Executes the destructor for this type. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.