Struct lldb::SBFrame
[−]
[src]
pub struct SBFrame { pub raw: SBFrameRef, }
One of the stack frames associated with a thread.
Fields
raw: SBFrameRef
The underlying raw SBFrameRef
.
Methods
impl SBFrame
[src]
fn wrap(raw: SBFrameRef) -> SBFrame
[src]
Construct a new SBFrame
.
fn maybe_wrap(raw: SBFrameRef) -> Option<SBFrame>
[src]
Construct a new Some(SBFrame)
or None
.
fn is_valid(&self) -> bool
[src]
Check whether or not this is a valid SBFrame
value.
fn frame_id(&self) -> u32
[src]
The zero-based stack frame index for this frame.
This can be used to locate adjacent frames in the thread's stack frames.
fn cfa(&self) -> Option<lldb_addr_t>
[src]
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.
fn pc(&self) -> lldb_addr_t
[src]
The program counter (PC) as an unsigned integer.
fn set_pc(&self, new_pc: lldb_addr_t) -> bool
[src]
fn sp(&self) -> lldb_addr_t
[src]
The stack pointer address as an unsigned integer.
fn fp(&self) -> lldb_addr_t
[src]
The frame pointer address as an unsigned integer.
fn pc_address(&self) -> SBAddress
[src]
The program counter (PC) as a section offset address (SBAddress
).
fn symbol_context(&self, resolve_scope: u32) -> SBSymbolContext
[src]
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 withSYMBOL_CONTEXT_ITEM_
.
fn module(&self) -> SBModule
[src]
The SBModule
for this stack frame.
fn compile_unit(&self) -> SBCompileUnit
[src]
The SBCompileUnit
for this stack frame.
fn function(&self) -> SBFunction
[src]
The SBFunction
for this stack frame.
fn symbol(&self) -> SBSymbol
[src]
The SBSymbol
for this stack frame.
fn block(&self) -> SBBlock
[src]
Get the deepest block that contains the frame PC.
fn function_name(&self) -> Option<&str>
[src]
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)
- NULL
See also is_inlined
.
fn display_function_name(&self) -> Option<&str>
[src]
fn is_inlined(&self) -> bool
[src]
Return true
if this frame represents an inlined function.
fn evaluate_expression(
&self,
expression: &str,
options: &SBExpressionOptions
) -> SBValue
[src]
&self,
expression: &str,
options: &SBExpressionOptions
) -> SBValue
Evaluate an expression within the context of this frame.
fn frame_block(&self) -> SBBlock
[src]
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.
fn line_entry(&self) -> Option<SBLineEntry>
[src]
The line table entry (SBLineEntry
) for this stack frame.
fn thread(&self) -> SBThread
[src]
The thread that is executing this stack frame.
fn disassemble(&self) -> &str
[src]
The disassembly of this function, presented as a string.
fn variables(&self, options: &SBVariablesOptions) -> SBValueList
[src]
The values for variables matching the specified options.
fn all_variables(&self) -> SBValueList
[src]
The values for all variables in this stack frame.
fn arguments(&self) -> SBValueList
[src]
The values for the argument variables in this stack frame.
fn locals(&self) -> SBValueList
[src]
The values for the local variables in this stack frame.
fn statics(&self) -> SBValueList
[src]
The values for the static variables in this stack frame.
fn registers(&self) -> SBValueList
[src]
The values for the CPU registers for this stack frame.
fn find_register(&self, name: &str) -> Option<SBValue>
[src]
The value for a particular register, if present.
fn parent_frame(&self) -> Option<SBFrame>
[src]
The parent frame that invoked this frame, if available.