SBSourceManager#

classlldb.SBSourceManager(*args)#

Represents a central authority for displaying source code.

For example (from test/source-manager/TestSourceManager.py),

# Create the filespec for 'main.c'.
filespec = lldb.SBFileSpec('main.c', False)
source_mgr = self.dbg.GetSourceManager()
# Use a string stream as the destination.
stream = lldb.SBStream()
source_mgr.DisplaySourceLinesWithLineNumbers(filespec,
 self.line,
 2, # context before
 2, # context after
 '=>', # prefix for current line
 stream)
# 2
# 3 int main(int argc, char const *argv[]) {
# => 4 printf('Hello world.\n'); // Set break point at this line.
# 5 return 0;
# 6 }
self.expect(stream.GetData(), 'Source code displayed correctly',
 exe=False,
 patterns = ['=> %d.*Hello world' % self.line])

Methods Summary

Methods Documentation

DisplaySourceLinesWithLineNumbers(SBSourceManager self, SBFileSpec file, uint32_t line, uint32_t context_before, uint32_t context_after, char const * current_line_cstr, SBStream s) size_t#
DisplaySourceLinesWithLineNumbersAndColumn(SBSourceManager self, SBFileSpec file, uint32_t line, uint32_t column, uint32_t context_before, uint32_t context_after, char const * current_line_cstr, SBStream s) size_t#