diff --git a/lldb/scripts/Python/interface/SBCompileUnit.i b/lldb/scripts/Python/interface/SBCompileUnit.i index 8a2e88569e43..a9294ec5d976 100644 --- a/lldb/scripts/Python/interface/SBCompileUnit.i +++ b/lldb/scripts/Python/interface/SBCompileUnit.i @@ -14,6 +14,12 @@ namespace lldb { SBCompileUnit supports line entry iteration. For example, + # Now get the SBSymbolContext from this frame. We want everything. :-) + context = frame0.GetSymbolContext(lldb.eSymbolContextEverything) + ... + + compileUnit = context.GetCompileUnit() + for lineEntry in compileUnit: print 'line entry: %s:%d' % (str(lineEntry.GetFileSpec()), lineEntry.GetLine()) @@ -35,7 +41,9 @@ line entry: /Volumes/data/lldb/svn/trunk/test/python_api/symbol-context/main.c:2 start addr: a.out[0x100000db6] end addr: a.out[0x100000dbc] ... -") SBCompileUnit; + +See also SBSymbolContext and SBLineEntry" +) SBCompileUnit; class SBCompileUnit { public: diff --git a/lldb/scripts/Python/interface/SBLineEntry.i b/lldb/scripts/Python/interface/SBLineEntry.i index 18dc6c31cabd..4e2968d0b39f 100644 --- a/lldb/scripts/Python/interface/SBLineEntry.i +++ b/lldb/scripts/Python/interface/SBLineEntry.i @@ -11,9 +11,31 @@ namespace lldb { %feature("docstring", "Specifies an association with a contiguous range of instructions and -a source file location. SBCompileUnit contains SBLineEntry(s). +a source file location. SBCompileUnit contains SBLineEntry(s). For example, -See also SBCompileUnit for example usage of SBLineEntry API." + for lineEntry in compileUnit: + print 'line entry: %s:%d' % (str(lineEntry.GetFileSpec()), + lineEntry.GetLine()) + print 'start addr: %s' % str(lineEntry.GetStartAddress()) + print 'end addr: %s' % str(lineEntry.GetEndAddress()) + +produces: + +line entry: /Volumes/data/lldb/svn/trunk/test/python_api/symbol-context/main.c:20 +start addr: a.out[0x100000d98] +end addr: a.out[0x100000da3] +line entry: /Volumes/data/lldb/svn/trunk/test/python_api/symbol-context/main.c:21 +start addr: a.out[0x100000da3] +end addr: a.out[0x100000da9] +line entry: /Volumes/data/lldb/svn/trunk/test/python_api/symbol-context/main.c:22 +start addr: a.out[0x100000da9] +end addr: a.out[0x100000db6] +line entry: /Volumes/data/lldb/svn/trunk/test/python_api/symbol-context/main.c:23 +start addr: a.out[0x100000db6] +end addr: a.out[0x100000dbc] +... + +See also SBCompileUnit." ) SBLineEntry; class SBLineEntry {