LLDB API Documentation

Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
lldb::SBFrame Class Reference

#include <SBFrame.h>

Collaboration diagram for lldb::SBFrame:
Collaboration graph
[legend]

Public Member Functions

 SBFrame ()
 
 SBFrame (const lldb::SBFrame &rhs)
 
const lldb::SBFrameoperator= (const lldb::SBFrame &rhs)
 
 ~SBFrame ()
 
bool IsEqual (const lldb::SBFrame &that) const
 
bool IsValid () const
 
uint32_t GetFrameID () const
 
lldb::addr_t GetCFA () const
 
lldb::addr_t GetPC () const
 
bool SetPC (lldb::addr_t new_pc)
 
lldb::addr_t GetSP () const
 
lldb::addr_t GetFP () const
 
lldb::SBAddress GetPCAddress () const
 
lldb::SBSymbolContext GetSymbolContext (uint32_t resolve_scope) const
 
lldb::SBModule GetModule () const
 
lldb::SBCompileUnit GetCompileUnit () const
 
lldb::SBFunction GetFunction () const
 
lldb::SBSymbol GetSymbol () const
 
lldb::SBBlock GetBlock () const
 
const char * GetFunctionName ()
 
const char * GetDisplayFunctionName ()
 
const char * GetFunctionName () const
 
bool IsInlined ()
 
bool IsInlined () const
 
lldb::SBValue EvaluateExpression (const char *expr)
 
lldb::SBValue EvaluateExpression (const char *expr, lldb::DynamicValueType use_dynamic)
 
lldb::SBValue EvaluateExpression (const char *expr, lldb::DynamicValueType use_dynamic, bool unwind_on_error)
 
lldb::SBValue EvaluateExpression (const char *expr, const SBExpressionOptions &options)
 
lldb::SBBlock GetFrameBlock () const
 
lldb::SBLineEntry GetLineEntry () const
 
lldb::SBThread GetThread () const
 
const char * Disassemble () const
 
void Clear ()
 
bool operator== (const lldb::SBFrame &rhs) const
 
bool operator!= (const lldb::SBFrame &rhs) const
 
lldb::SBValueList GetVariables (bool arguments, bool locals, bool statics, bool in_scope_only)
 
lldb::SBValueList GetVariables (bool arguments, bool locals, bool statics, bool in_scope_only, lldb::DynamicValueType use_dynamic)
 
lldb::SBValueList GetVariables (const lldb::SBVariablesOptions &options)
 
lldb::SBValueList GetRegisters ()
 
lldb::SBValue FindRegister (const char *name)
 
lldb::SBValue FindVariable (const char *var_name)
 
lldb::SBValue FindVariable (const char *var_name, lldb::DynamicValueType use_dynamic)
 
lldb::SBValue GetValueForVariablePath (const char *var_expr_cstr, DynamicValueType use_dynamic)
 
lldb::SBValue GetValueForVariablePath (const char *var_path)
 
lldb::SBValue FindValue (const char *name, ValueType value_type)
 
lldb::SBValue FindValue (const char *name, ValueType value_type, lldb::DynamicValueType use_dynamic)
 
bool GetDescription (lldb::SBStream &description)
 
 SBFrame (const lldb::StackFrameSP &lldb_object_sp)
 

Protected Member Functions

lldb::StackFrameSP GetFrameSP () const
 
void SetFrameSP (const lldb::StackFrameSP &lldb_object_sp)
 

Protected Attributes

lldb::ExecutionContextRefSP m_opaque_sp
 

Friends

class SBBlock
 
class SBExecutionContext
 
class SBInstruction
 
class SBThread
 
class SBValue
 

Detailed Description

Definition at line 18 of file SBFrame.h.

Constructor & Destructor Documentation

lldb::SBFrame::SBFrame ( )
lldb::SBFrame::SBFrame ( const lldb::SBFrame rhs)
lldb::SBFrame::~SBFrame ( )
lldb::SBFrame::SBFrame ( const lldb::StackFrameSP &  lldb_object_sp)

Member Function Documentation

void lldb::SBFrame::Clear ( )
const char* lldb::SBFrame::Disassemble ( ) const
lldb::SBValue lldb::SBFrame::EvaluateExpression ( const char *  expr)

The version that doesn't supply a 'use_dynamic' value will use the target's default.

lldb::SBValue lldb::SBFrame::EvaluateExpression ( const char *  expr,
lldb::DynamicValueType  use_dynamic 
)
lldb::SBValue lldb::SBFrame::EvaluateExpression ( const char *  expr,
lldb::DynamicValueType  use_dynamic,
bool  unwind_on_error 
)
lldb::SBValue lldb::SBFrame::EvaluateExpression ( const char *  expr,
const SBExpressionOptions options 
)
lldb::SBValue lldb::SBFrame::FindRegister ( const char *  name)
lldb::SBValue lldb::SBFrame::FindValue ( const char *  name,
ValueType  value_type 
)

Find variables, register sets, registers, or persistent variables using the frame as the scope.

NB. This function does not look up ivars in the function object pointer. To do that use GetValueForVariablePath.

The version that doesn't supply a 'use_dynamic' value will use the target's default.

lldb::SBValue lldb::SBFrame::FindValue ( const char *  name,
ValueType  value_type,
lldb::DynamicValueType  use_dynamic 
)
lldb::SBValue lldb::SBFrame::FindVariable ( const char *  var_name)

The version that doesn't supply a 'use_dynamic' value will use the target's default.

lldb::SBValue lldb::SBFrame::FindVariable ( const char *  var_name,
lldb::DynamicValueType  use_dynamic 
)
lldb::SBBlock lldb::SBFrame::GetBlock ( ) const

Gets the deepest block that contains the frame PC.

See also GetFrameBlock().

lldb::addr_t lldb::SBFrame::GetCFA ( ) const
lldb::SBCompileUnit lldb::SBFrame::GetCompileUnit ( ) const
bool lldb::SBFrame::GetDescription ( lldb::SBStream description)
const char* lldb::SBFrame::GetDisplayFunctionName ( )
lldb::addr_t lldb::SBFrame::GetFP ( ) const
lldb::SBBlock lldb::SBFrame::GetFrameBlock ( ) const

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::GetBlock()) 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.

uint32_t lldb::SBFrame::GetFrameID ( ) const
lldb::StackFrameSP lldb::SBFrame::GetFrameSP ( ) const
protected
lldb::SBFunction lldb::SBFrame::GetFunction ( ) const
const char* lldb::SBFrame::GetFunctionName ( )

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 IsInlined().

const char* lldb::SBFrame::GetFunctionName ( ) const
lldb::SBLineEntry lldb::SBFrame::GetLineEntry ( ) const
lldb::SBModule lldb::SBFrame::GetModule ( ) const
lldb::addr_t lldb::SBFrame::GetPC ( ) const
lldb::SBAddress lldb::SBFrame::GetPCAddress ( ) const
lldb::SBValueList lldb::SBFrame::GetRegisters ( )
lldb::addr_t lldb::SBFrame::GetSP ( ) const
lldb::SBSymbol lldb::SBFrame::GetSymbol ( ) const
lldb::SBSymbolContext lldb::SBFrame::GetSymbolContext ( uint32_t  resolve_scope) const
lldb::SBThread lldb::SBFrame::GetThread ( ) const
lldb::SBValue lldb::SBFrame::GetValueForVariablePath ( const char *  var_expr_cstr,
DynamicValueType  use_dynamic 
)
lldb::SBValue lldb::SBFrame::GetValueForVariablePath ( const char *  var_path)

The version that doesn't supply a 'use_dynamic' value will use the target's default.

lldb::SBValueList lldb::SBFrame::GetVariables ( bool  arguments,
bool  locals,
bool  statics,
bool  in_scope_only 
)

The version that doesn't supply a 'use_dynamic' value will use the target's default.

lldb::SBValueList lldb::SBFrame::GetVariables ( bool  arguments,
bool  locals,
bool  statics,
bool  in_scope_only,
lldb::DynamicValueType  use_dynamic 
)
lldb::SBValueList lldb::SBFrame::GetVariables ( const lldb::SBVariablesOptions options)
bool lldb::SBFrame::IsEqual ( const lldb::SBFrame that) const
bool lldb::SBFrame::IsInlined ( )

Return true if this frame represents an inlined function.

See also GetFunctionName().

bool lldb::SBFrame::IsInlined ( ) const
bool lldb::SBFrame::IsValid ( ) const
bool lldb::SBFrame::operator!= ( const lldb::SBFrame rhs) const
const lldb::SBFrame& lldb::SBFrame::operator= ( const lldb::SBFrame rhs)
bool lldb::SBFrame::operator== ( const lldb::SBFrame rhs) const
void lldb::SBFrame::SetFrameSP ( const lldb::StackFrameSP &  lldb_object_sp)
protected
bool lldb::SBFrame::SetPC ( lldb::addr_t  new_pc)

Friends And Related Function Documentation

friend class SBBlock
friend

Definition at line 181 of file SBFrame.h.

friend class SBExecutionContext
friend

Definition at line 182 of file SBFrame.h.

friend class SBInstruction
friend

Definition at line 183 of file SBFrame.h.

friend class SBThread
friend

Definition at line 184 of file SBFrame.h.

friend class SBValue
friend

Definition at line 185 of file SBFrame.h.

Member Data Documentation

lldb::ExecutionContextRefSP lldb::SBFrame::m_opaque_sp
protected

Definition at line 191 of file SBFrame.h.


The documentation for this class was generated from the following file: