LLDB mainline
|
#include <SourceManager.h>
Public Member Functions | |
File (const FileSpec &file_spec, Target *target) | |
File (const FileSpec &file_spec, lldb::DebuggerSP debugger_sp) | |
~File ()=default | |
void | UpdateIfNeeded () |
size_t | DisplaySourceLines (uint32_t line, std::optional< size_t > column, uint32_t context_before, uint32_t context_after, Stream *s) |
void | FindLinesMatchingRegex (RegularExpression ®ex, uint32_t start_line, uint32_t end_line, std::vector< uint32_t > &match_lines) |
bool | GetLine (uint32_t line_no, std::string &buffer) |
uint32_t | GetLineOffset (uint32_t line) |
bool | LineIsValid (uint32_t line) |
const FileSpec & | GetFileSpec () |
uint32_t | GetSourceMapModificationID () const |
const char * | PeekLineData (uint32_t line) |
uint32_t | GetLineLength (uint32_t line, bool include_newline_chars) |
uint32_t | GetNumLines () |
Protected Types | |
typedef std::vector< uint32_t > | LineOffsets |
Protected Member Functions | |
bool | CalculateLineOffsets (uint32_t line=UINT32_MAX) |
Protected Attributes | |
FileSpec | m_file_spec_orig |
FileSpec | m_file_spec |
llvm::sys::TimePoint | m_mod_time |
uint32_t | m_source_map_mod_id = 0 |
lldb::DataBufferSP | m_data_sp |
LineOffsets | m_offsets |
lldb::DebuggerWP | m_debugger_wp |
Private Member Functions | |
void | CommonInitializer (const FileSpec &file_spec, Target *target) |
Friends | |
bool | operator== (const SourceManager::File &lhs, const SourceManager::File &rhs) |
Definition at line 34 of file SourceManager.h.
|
protected |
Definition at line 84 of file SourceManager.h.
Definition at line 404 of file SourceManager.cpp.
References CommonInitializer().
SourceManager::File::File | ( | const FileSpec & | file_spec, |
lldb::DebuggerSP | debugger_sp | ||
) |
Definition at line 396 of file SourceManager.cpp.
References CommonInitializer().
|
default |
|
protected |
Definition at line 648 of file SourceManager.cpp.
References is_newline_char(), and UINT32_MAX.
Definition at line 412 of file SourceManager.cpp.
References lldb_private::ConstString::AsCString(), lldb_private::SymbolContext::comp_unit, lldb_private::FileSystem::CreateDataBuffer(), lldb_private::PathMappingList::FindFile(), lldb_private::ModuleList::FindSourceFile(), lldb_private::SymbolContextList::GetContextAtIndex(), lldb_private::FileSpec::GetDirectory(), lldb_private::FileSpec::GetFilename(), lldb_private::Target::GetImages(), lldb_private::PathMappingList::GetModificationID(), lldb_private::FileSystem::GetModificationTime(), lldb_private::CompileUnit::GetPrimaryFile(), lldb_private::TargetProperties::GetSourcePathMap(), lldb_private::FileSystem::Instance(), resolve_tilde(), and lldb_private::ModuleList::ResolveSymbolContextForFilePath().
Referenced by File().
size_t SourceManager::File::DisplaySourceLines | ( | uint32_t | line, |
std::optional< size_t > | column, | ||
uint32_t | context_before, | ||
uint32_t | context_after, | ||
Stream * | s | ||
) |
Definition at line 560 of file SourceManager.cpp.
References lldb::eLanguageTypeUnknown, lldb_private::Stream::EOL(), lldb_private::HighlighterManager::getHighlighterFor(), lldb_private::Stream::GetWrittenBytes(), is_newline_char(), lldb_private::SourceManager::m_debugger_wp, lldb_private::HighlightStyle::MakeVimStyle(), lldb_private::HighlightStyle::selected, lldb_private::HighlightStyle::ColorStyle::Set(), should_highlight_source(), should_show_stop_column_with_ansi(), and UINT32_MAX.
void SourceManager::File::FindLinesMatchingRegex | ( | RegularExpression & | regex, |
uint32_t | start_line, | ||
uint32_t | end_line, | ||
std::vector< uint32_t > & | match_lines | ||
) |
Definition at line 620 of file SourceManager.cpp.
References lldb_private::RegularExpression::Execute(), and UINT32_MAX.
|
inline |
Definition at line 58 of file SourceManager.h.
References m_file_spec.
bool SourceManager::File::GetLine | ( | uint32_t | line_no, |
std::string & | buffer | ||
) |
Definition at line 701 of file SourceManager.cpp.
References UINT32_MAX.
Definition at line 509 of file SourceManager.cpp.
References UINT32_MAX.
Definition at line 480 of file SourceManager.cpp.
References UINT32_MAX.
uint32_t SourceManager::File::GetNumLines | ( | ) |
Definition at line 494 of file SourceManager.cpp.
|
inline |
Definition at line 60 of file SourceManager.h.
References m_source_map_mod_id.
bool SourceManager::File::LineIsValid | ( | uint32_t | line | ) |
Definition at line 537 of file SourceManager.cpp.
const char * SourceManager::File::PeekLineData | ( | uint32_t | line | ) |
Definition at line 499 of file SourceManager.cpp.
void SourceManager::File::UpdateIfNeeded | ( | ) |
Definition at line 546 of file SourceManager.cpp.
References lldb_private::FileSystem::CreateDataBuffer(), lldb_private::FileSystem::GetModificationTime(), and lldb_private::FileSystem::Instance().
|
friend |
|
protected |
Definition at line 83 of file SourceManager.h.
|
protected |
Definition at line 86 of file SourceManager.h.
|
protected |
Definition at line 73 of file SourceManager.h.
Referenced by GetFileSpec(), and lldb_private::operator==().
|
protected |
Definition at line 71 of file SourceManager.h.
|
protected |
Definition at line 78 of file SourceManager.h.
Referenced by lldb_private::operator==().
|
protected |
Definition at line 85 of file SourceManager.h.
|
protected |
Definition at line 82 of file SourceManager.h.
Referenced by GetSourceMapModificationID().