Package lldb :: Class SBSymbolContext |
[hide private]
[frames] | no frames]

# Class SBSymbolContext

source code

    A context object that provides access to core debugger entities.

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

Instance Methods | [hide private]
__setattr__(self, name, value) x.__setattr__('name', value) <==> x.name = value | source code
__getattr__(self, name) | source code
__repr__(self) repr(x) | source code
__init__(self, *args) __init__(lldb::SBSymbolContext self) -> SBSymbolContext __init__(lldb::SBSymbolContext self, SBSymbolContext rhs) -> SBSymbolContext | source code
__swig_destroy__(...) delete_SBSymbolContext(SBSymbolContext self) |
__del__(self) | source code
__nonzero__(self) | source code
IsValid(self) IsValid(SBSymbolContext self) -> bool | source code
GetModule(self) GetModule(SBSymbolContext self) -> SBModule | source code
GetCompileUnit(self) GetCompileUnit(SBSymbolContext self) -> SBCompileUnit | source code
GetFunction(self) GetFunction(SBSymbolContext self) -> SBFunction | source code
GetBlock(self) GetBlock(SBSymbolContext self) -> SBBlock | source code
GetLineEntry(self) GetLineEntry(SBSymbolContext self) -> SBLineEntry | source code
GetSymbol(self) GetSymbol(SBSymbolContext self) -> SBSymbol | source code
SetModule(self, *args) SetModule(SBSymbolContext self, SBModule module) | source code
SetCompileUnit(self, *args) SetCompileUnit(SBSymbolContext self, SBCompileUnit compile_unit) | source code
SetFunction(self, *args) SetFunction(SBSymbolContext self, SBFunction function) | source code
SetBlock(self, *args) SetBlock(SBSymbolContext self, SBBlock block) | source code
SetLineEntry(self, *args) SetLineEntry(SBSymbolContext self, SBLineEntry line_entry) | source code
SetSymbol(self, *args) SetSymbol(SBSymbolContext self, SBSymbol symbol) | source code
GetParentOfInlinedScope(self, *args) GetParentOfInlinedScope(SBSymbolContext self, SBAddress curr_frame_pc, SBAddress parent_frame_addr) -> SBSymbolContext | source code
GetDescription(self, *args) GetDescription(SBSymbolContext self, SBStream description) -> bool | source code
__str__(self) __str__(SBSymbolContext self) -> PyObject * | source code
Inherited from `object`: `__delattr__`, `__format__`, `__getattribute__`, `__hash__`, `__new__`, `__reduce__`, `__reduce_ex__`, `__sizeof__`, `__subclasshook__`

Class Variables | [hide private]
| __swig_setmethods__ = `{}`
| __swig_getmethods__ = `{}`

Properties | [hide private]
| 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.
Inherited from `object`: `__class__`

Method Details | [hide private]

### __setattr__(self, name, value) | source code
x.__setattr__('name', value) <==> x.name = value Overrides: object.__setattr__ (inherited documentation)

### __repr__(self) (Representation operator) | source code
repr(x) Overrides: object.__repr__ (inherited documentation)

### __init__(self, *args) (Constructor) | source code
__init__(lldb::SBSymbolContext self) -> SBSymbolContext __init__(lldb::SBSymbolContext self, SBSymbolContext rhs) -> SBSymbolContext Overrides: object.__init__

### __str__(self) (Informal representation operator) | source code
__str__(SBSymbolContext self) -> PyObject * Overrides: object.__str__

Property Details | [hide private]

### block A read/write property that allows the getting/setting of the block (lldb.SBBlock) in this symbol context. Get Method: GetBlock(self) - GetBlock(SBSymbolContext self) -> SBBlock Set Method: SetBlock(self, *args) - SetBlock(SBSymbolContext self, SBBlock block)

### compile_unit A read/write property that allows the getting/setting of the compile unit (lldb.SBCompileUnit) in this symbol context. Get Method: GetCompileUnit(self) - GetCompileUnit(SBSymbolContext self) -> SBCompileUnit Set Method: SetCompileUnit(self, *args) - SetCompileUnit(SBSymbolContext self, SBCompileUnit compile_unit)

### function A read/write property that allows the getting/setting of the function (lldb.SBFunction) in this symbol context. Get Method: GetFunction(self) - GetFunction(SBSymbolContext self) -> SBFunction Set Method: SetFunction(self, *args) - SetFunction(SBSymbolContext self, SBFunction function)

### line_entry A read/write property that allows the getting/setting of the line entry (lldb.SBLineEntry) in this symbol context. Get Method: GetLineEntry(self) - GetLineEntry(SBSymbolContext self) -> SBLineEntry Set Method: SetLineEntry(self, *args) - SetLineEntry(SBSymbolContext self, SBLineEntry line_entry)

### module A read/write property that allows the getting/setting of the module (lldb.SBModule) in this symbol context. Get Method: GetModule(self) - GetModule(SBSymbolContext self) -> SBModule Set Method: SetModule(self, *args) - SetModule(SBSymbolContext self, SBModule module)

### symbol A read/write property that allows the getting/setting of the symbol (lldb.SBSymbol) in this symbol context. Get Method: GetSymbol(self) - GetSymbol(SBSymbolContext self) -> SBSymbol Set Method: SetSymbol(self, *args) - SetSymbol(SBSymbolContext self, SBSymbol symbol)