SBSymbolContext#

class lldb.SBSymbolContext(*args)#

A context object that provides access to core debugger entities.

Many debugger functions require a context when doing lookups. This class provides a common structure that can be used as the result of a query that can contain a single result.

For example,

exe = os.path.join(os.getcwd(), 'a.out')

# Create a target for the debugger.
target = self.dbg.CreateTarget(exe)

# Now create a breakpoint on main.c by name 'c'.
breakpoint = target.BreakpointCreateByName('c', 'a.out')

# Now launch the process, and do not stop at entry point.
process = target.LaunchSimple(None, None, os.getcwd())

# The inferior should stop on 'c'.
from lldbutil import get_stopped_thread
thread = get_stopped_thread(process, lldb.eStopReasonBreakpoint)
frame0 = thread.GetFrameAtIndex(0)

# Now get the SBSymbolContext from this frame.  We want everything. :-)
context = frame0.GetSymbolContext(lldb.eSymbolContextEverything)

# Get the module.
module = context.GetModule()
...

# And the compile unit associated with the frame.
compileUnit = context.GetCompileUnit()
...

Attributes Summary

block

A read/write property that allows the getting/setting of the block (lldb.SBBlock) in this symbol context.

compile_unit

A read/write property that allows the getting/setting of the compile unit (lldb.SBCompileUnit) in this symbol context.

function

A read/write property that allows the getting/setting of the function (lldb.SBFunction) in this symbol context.

line_entry

A read/write property that allows the getting/setting of the line entry (lldb.SBLineEntry) in this symbol context.

module

A read/write property that allows the getting/setting of the module (lldb.SBModule) in this symbol context.

symbol

A read/write property that allows the getting/setting of the symbol (lldb.SBSymbol) in this symbol context.

Methods Summary

GetBlock(SBSymbolContext self)

GetCompileUnit(SBSymbolContext self)

GetDescription(SBSymbolContext self, ...)

GetFunction(SBSymbolContext self)

GetLineEntry(SBSymbolContext self)

GetModule(SBSymbolContext self)

GetParentOfInlinedScope(...)

GetSymbol(SBSymbolContext self)

IsValid(SBSymbolContext self)

SetBlock(SBSymbolContext self, SBBlock block)

SetCompileUnit(SBSymbolContext self, ...)

SetFunction(SBSymbolContext self, ...)

SetLineEntry(SBSymbolContext self, ...)

SetModule(SBSymbolContext self, SBModule module)

SetSymbol(SBSymbolContext self, SBSymbol symbol)

Attributes Documentation

block#

A read/write property that allows the getting/setting of the block (lldb.SBBlock) in this symbol context.

compile_unit#

A read/write property that allows the getting/setting of the compile unit (lldb.SBCompileUnit) in this symbol context.

function#

A read/write property that allows the getting/setting of the function (lldb.SBFunction) in this symbol context.

line_entry#

A read/write property that allows the getting/setting of the line entry (lldb.SBLineEntry) in this symbol context.

module#

A read/write property that allows the getting/setting of the module (lldb.SBModule) in this symbol context.

symbol#

A read/write property that allows the getting/setting of the symbol (lldb.SBSymbol) in this symbol context.

Methods Documentation

GetBlock(SBSymbolContext self) SBBlock#
GetCompileUnit(SBSymbolContext self) SBCompileUnit#
GetDescription(SBSymbolContext self, SBStream description) bool#
GetFunction(SBSymbolContext self) SBFunction#
GetLineEntry(SBSymbolContext self) SBLineEntry#
GetModule(SBSymbolContext self) SBModule#
GetParentOfInlinedScope(SBSymbolContext self, SBAddress curr_frame_pc, SBAddress parent_frame_addr) SBSymbolContext#
GetSymbol(SBSymbolContext self) SBSymbol#
IsValid(SBSymbolContext self) bool#
SetBlock(SBSymbolContext self, SBBlock block)#
SetCompileUnit(SBSymbolContext self, SBCompileUnit compile_unit)#
SetFunction(SBSymbolContext self, SBFunction function)#
SetLineEntry(SBSymbolContext self, SBLineEntry line_entry)#
SetModule(SBSymbolContext self, SBModule module)#
SetSymbol(SBSymbolContext self, SBSymbol symbol)#