LLDB  mainline
Public Member Functions | Protected Attributes | List of all members
lldb_private::ModuleSpec Class Reference

#include <ModuleSpec.h>

Collaboration diagram for lldb_private::ModuleSpec:
Collaboration graph
[legend]

Public Member Functions

 ModuleSpec ()
 
 ModuleSpec (const FileSpec &file_spec, const UUID &uuid=UUID(), lldb::DataBufferSP data=lldb::DataBufferSP())
 If the data argument is passed, its contents will be used as the module contents instead of trying to read them from file_spec . More...
 
 ModuleSpec (const FileSpec &file_spec, const ArchSpec &arch)
 
FileSpecGetFileSpecPtr ()
 
const FileSpecGetFileSpecPtr () const
 
FileSpecGetFileSpec ()
 
const FileSpecGetFileSpec () const
 
FileSpecGetPlatformFileSpecPtr ()
 
const FileSpecGetPlatformFileSpecPtr () const
 
FileSpecGetPlatformFileSpec ()
 
const FileSpecGetPlatformFileSpec () const
 
FileSpecGetSymbolFileSpecPtr ()
 
const FileSpecGetSymbolFileSpecPtr () const
 
FileSpecGetSymbolFileSpec ()
 
const FileSpecGetSymbolFileSpec () const
 
ArchSpecGetArchitecturePtr ()
 
const ArchSpecGetArchitecturePtr () const
 
ArchSpecGetArchitecture ()
 
const ArchSpecGetArchitecture () const
 
UUIDGetUUIDPtr ()
 
const UUIDGetUUIDPtr () const
 
UUIDGetUUID ()
 
const UUIDGetUUID () const
 
ConstStringGetObjectName ()
 
ConstString GetObjectName () const
 
uint64_t GetObjectOffset () const
 
void SetObjectOffset (uint64_t object_offset)
 
uint64_t GetObjectSize () const
 
void SetObjectSize (uint64_t object_size)
 
llvm::sys::TimePoint & GetObjectModificationTime ()
 
const llvm::sys::TimePoint & GetObjectModificationTime () const
 
PathMappingListGetSourceMappingList () const
 
lldb::DataBufferSP GetData () const
 
void Clear ()
 
 operator bool () const
 
void Dump (Stream &strm) const
 
bool Matches (const ModuleSpec &match_module_spec, bool exact_arch_match) const
 

Protected Attributes

FileSpec m_file
 
FileSpec m_platform_file
 
FileSpec m_symbol_file
 
ArchSpec m_arch
 
UUID m_uuid
 
ConstString m_object_name
 
uint64_t m_object_offset = 0
 
uint64_t m_object_size = 0
 
llvm::sys::TimePoint m_object_mod_time
 
PathMappingList m_source_mappings
 
lldb::DataBufferSP m_data = {}
 

Detailed Description

Definition at line 26 of file ModuleSpec.h.

Constructor & Destructor Documentation

◆ ModuleSpec() [1/3]

lldb_private::ModuleSpec::ModuleSpec ( )
inline

Definition at line 28 of file ModuleSpec.h.

◆ ModuleSpec() [2/3]

lldb_private::ModuleSpec::ModuleSpec ( const FileSpec file_spec,
const UUID uuid = UUID(),
lldb::DataBufferSP  data = lldb::DataBufferSP() 
)
inline

If the data argument is passed, its contents will be used as the module contents instead of trying to read them from file_spec .

Definition at line 35 of file ModuleSpec.h.

References lldb_private::FileSystem::GetByteSize(), lldb_private::FileSystem::Instance(), m_file, and m_object_size.

◆ ModuleSpec() [3/3]

lldb_private::ModuleSpec::ModuleSpec ( const FileSpec file_spec,
const ArchSpec arch 
)
inline

Definition at line 46 of file ModuleSpec.h.

Member Function Documentation

◆ Clear()

void lldb_private::ModuleSpec::Clear ( )
inline

◆ Dump()

void lldb_private::ModuleSpec::Dump ( Stream strm) const
inline

◆ GetArchitecture() [1/2]

ArchSpec& lldb_private::ModuleSpec::GetArchitecture ( )
inline

Definition at line 94 of file ModuleSpec.h.

References m_arch.

Referenced by lldb::SBTarget::AddModule(), CommandObjectTargetSymbolsAdd::AddModuleSymbols(), CommandObjectTargetSymbolsAdd::AddSymbolsForFile(), CommandObjectTargetSymbolsAdd::AddSymbolsForFrame(), CommandObjectTargetSymbolsAdd::AddSymbolsForStack(), ProcessKDP::DoConnectRemote(), CommandObjectTargetModulesAdd::DoExecute(), ProcessElfCore::DoLoadCore(), ObjectFileMachO::Dump(), FileAtPathContainsArchAndUUID(), FindModulesByName(), lldb_private::DynamicLoaderDarwin::FindTargetModuleForImageInfo(), ObjectFileMachO::GetAllArchSpecs(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetModuleInfo(), lldb_private::ObjectFilePDB::GetModuleSpecifications(), ObjectContainerBSDArchive::GetModuleSpecifications(), ObjectFilePECOFF::GetModuleSpecifications(), ObjectFileELF::GetModuleSpecifications(), lldb_private::Platform::GetRemoteSharedModule(), PlatformMacOSX::GetSharedModule(), lldb_private::ModuleList::GetSharedModule(), PlatformDarwin::GetSharedModuleWithLocalCache(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::Handle_jModulesInfo(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::Handle_qModuleInfo(), DynamicLoaderDarwinKernel::KextImageInfo::LoadImageUsingMemoryModule(), Matches(), lldb_private::Module::MatchesModuleSpec(), lldb_private::Module::Module(), ObjectFileMachO::ParseHeader(), ParseModuleSpec(), lldb_private::minidump::ProcessMinidump::ReadModuleList(), lldb_private::RemoteAwarePlatform::ResolveExecutable(), PlatformRemoteDarwinDevice::ResolveExecutable(), PlatformAppleSimulator::ResolveExecutable(), lldb_private::Platform::ResolveExecutable(), lldb_private::Platform::ResolveRemoteExecutable(), and SymbolFileDWARF::UpdateExternalModuleListIfNeeded().

◆ GetArchitecture() [2/2]

const ArchSpec& lldb_private::ModuleSpec::GetArchitecture ( ) const
inline

Definition at line 96 of file ModuleSpec.h.

References m_arch.

◆ GetArchitecturePtr() [1/2]

ArchSpec* lldb_private::ModuleSpec::GetArchitecturePtr ( )
inline

◆ GetArchitecturePtr() [2/2]

const ArchSpec* lldb_private::ModuleSpec::GetArchitecturePtr ( ) const
inline

Definition at line 90 of file ModuleSpec.h.

References lldb_private::ArchSpec::IsValid(), and m_arch.

◆ GetData()

lldb::DataBufferSP lldb_private::ModuleSpec::GetData ( ) const
inline

Definition at line 132 of file ModuleSpec.h.

References m_data.

Referenced by lldb_private::Module::Module().

◆ GetFileSpec() [1/2]

FileSpec& lldb_private::ModuleSpec::GetFileSpec ( )
inline

Definition at line 58 of file ModuleSpec.h.

References m_file.

Referenced by lldb::SBTarget::AddModule(), CommandObjectTargetSymbolsAdd::AddModuleSymbols(), CommandObjectTargetSymbolsAdd::AddSymbolsForFile(), CommandObjectTargetSymbolsAdd::AddSymbolsForFrame(), CommandObjectTargetSymbolsAdd::AddSymbolsForStack(), BringInRemoteFile(), lldb_private::wasm::SymbolVendorWasm::CreateInstance(), SymbolVendorELF::CreateInstance(), ProcessKDP::DoConnectRemote(), CommandObjectTargetModulesAdd::DoExecute(), CommandObjectTargetModulesLoad::DoExecute(), CommandObjectTargetSymbolsAdd::DoExecute(), ProcessElfCore::DoLoadCore(), PlatformDarwin::FindBundleBinaryInExecSearchPaths(), lldb_private::DynamicLoaderDarwin::FindTargetModuleForImageInfo(), lldb_private::ModuleCache::Get(), lldb_private::ModuleCache::GetAndPut(), lldb_private::Platform::GetCachedExecutable(), lldb_private::Platform::GetCachedSharedModule(), SymbolFileDWARF::GetDwpSymbolFile(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetModuleInfo(), ObjectFileMachO::GetModuleSpecifications(), GetModuleSpecInfoFromUUIDDictionary(), lldb_private::Target::GetOrCreateModule(), lldb_private::DynamicLoaderDarwin::GetPThreadLibraryModule(), lldb_private::Platform::GetRemoteSharedModule(), PlatformRemoteDarwinDevice::GetSharedModule(), PlatformDarwin::GetSharedModule(), PlatformAppleSimulator::GetSharedModule(), lldb_private::Platform::GetSharedModule(), lldb_private::ModuleList::GetSharedModule(), PlatformDarwin::GetSharedModuleWithLocalCache(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::Handle_jModulesInfo(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::Handle_qModuleInfo(), load_standalone_binary(), ObjectFileMachO::LoadCoreFileImages(), DynamicLoaderDarwinKernel::KextImageInfo::LoadImageUsingMemoryModule(), LocateDSYMInVincinityOfExecutable(), lldb_private::Symbols::LocateExecutableObjectFile(), lldb_private::Symbols::LocateExecutableSymbolFile(), LocateMacOSXFilesUsingDebugSymbols(), Matches(), lldb_private::Module::MatchesModuleSpec(), lldb_private::Module::Module(), lldb_private::TraceSessionFileParser::ParseModule(), ParseModuleSpec(), lldb_private::minidump::ProcessMinidump::ReadModuleList(), PlatformRemoteDarwinDevice::ResolveExecutable(), lldb_private::RemoteAwarePlatform::ResolveExecutable(), PlatformAppleSimulator::ResolveExecutable(), lldb_private::Platform::ResolveExecutable(), lldb_private::Symbol::ResolveReExportedSymbol(), lldb_private::Symbol::ResolveReExportedSymbolInModuleSpec(), lldb_private::Platform::ResolveRemoteExecutable(), and SymbolFileDWARF::UpdateExternalModuleListIfNeeded().

◆ GetFileSpec() [2/2]

const FileSpec& lldb_private::ModuleSpec::GetFileSpec ( ) const
inline

Definition at line 60 of file ModuleSpec.h.

References m_file.

◆ GetFileSpecPtr() [1/2]

FileSpec* lldb_private::ModuleSpec::GetFileSpecPtr ( )
inline

◆ GetFileSpecPtr() [2/2]

const FileSpec* lldb_private::ModuleSpec::GetFileSpecPtr ( ) const
inline

Definition at line 54 of file ModuleSpec.h.

References m_file.

◆ GetObjectModificationTime() [1/2]

llvm::sys::TimePoint& lldb_private::ModuleSpec::GetObjectModificationTime ( )
inline

◆ GetObjectModificationTime() [2/2]

const llvm::sys::TimePoint& lldb_private::ModuleSpec::GetObjectModificationTime ( ) const
inline

Definition at line 126 of file ModuleSpec.h.

References m_object_mod_time.

◆ GetObjectName() [1/2]

ConstString& lldb_private::ModuleSpec::GetObjectName ( )
inline

◆ GetObjectName() [2/2]

ConstString lldb_private::ModuleSpec::GetObjectName ( ) const
inline

Definition at line 110 of file ModuleSpec.h.

References m_object_name.

◆ GetObjectOffset()

uint64_t lldb_private::ModuleSpec::GetObjectOffset ( ) const
inline

◆ GetObjectSize()

uint64_t lldb_private::ModuleSpec::GetObjectSize ( ) const
inline

◆ GetPlatformFileSpec() [1/2]

FileSpec& lldb_private::ModuleSpec::GetPlatformFileSpec ( )
inline

◆ GetPlatformFileSpec() [2/2]

const FileSpec& lldb_private::ModuleSpec::GetPlatformFileSpec ( ) const
inline

Definition at line 72 of file ModuleSpec.h.

References m_platform_file.

◆ GetPlatformFileSpecPtr() [1/2]

FileSpec* lldb_private::ModuleSpec::GetPlatformFileSpecPtr ( )
inline

Definition at line 62 of file ModuleSpec.h.

References m_platform_file.

◆ GetPlatformFileSpecPtr() [2/2]

const FileSpec* lldb_private::ModuleSpec::GetPlatformFileSpecPtr ( ) const
inline

Definition at line 66 of file ModuleSpec.h.

References m_platform_file.

◆ GetSourceMappingList()

PathMappingList& lldb_private::ModuleSpec::GetSourceMappingList ( ) const
inline

◆ GetSymbolFileSpec() [1/2]

FileSpec& lldb_private::ModuleSpec::GetSymbolFileSpec ( )
inline

◆ GetSymbolFileSpec() [2/2]

const FileSpec& lldb_private::ModuleSpec::GetSymbolFileSpec ( ) const
inline

Definition at line 84 of file ModuleSpec.h.

References m_symbol_file.

◆ GetSymbolFileSpecPtr() [1/2]

FileSpec* lldb_private::ModuleSpec::GetSymbolFileSpecPtr ( )
inline

Definition at line 74 of file ModuleSpec.h.

References m_symbol_file.

◆ GetSymbolFileSpecPtr() [2/2]

const FileSpec* lldb_private::ModuleSpec::GetSymbolFileSpecPtr ( ) const
inline

Definition at line 78 of file ModuleSpec.h.

References m_symbol_file.

◆ GetUUID() [1/2]

UUID& lldb_private::ModuleSpec::GetUUID ( )
inline

Definition at line 104 of file ModuleSpec.h.

References m_uuid.

Referenced by lldb::SBTarget::AddModule(), CommandObjectTargetSymbolsAdd::AddModuleSymbols(), CommandObjectTargetSymbolsAdd::AddSymbolsForFile(), CommandObjectTargetSymbolsAdd::AddSymbolsForFrame(), CommandObjectTargetSymbolsAdd::AddSymbolsForStack(), CommandObjectTargetSymbolsAdd::AddSymbolsForUUID(), SymbolVendorMacOSX::CreateInstance(), lldb_private::wasm::SymbolVendorWasm::CreateInstance(), SymbolVendorELF::CreateInstance(), ProcessKDP::DoConnectRemote(), CommandObjectTargetModulesAdd::DoExecute(), CommandObjectTargetModulesLoad::DoExecute(), FileAtPathContainsArchAndUUID(), lldb_private::DynamicLoaderDarwin::FindTargetModuleForImageInfo(), lldb_private::ModuleCache::Get(), lldb_private::ModuleCache::GetAndPut(), lldb_private::Platform::GetCachedSharedModule(), lldb_private::process_gdb_remote::GDBRemoteCommunicationClient::GetModuleInfo(), lldb_private::breakpad::ObjectFileBreakpad::GetModuleSpecifications(), lldb_private::ObjectFilePDB::GetModuleSpecifications(), ObjectFilePECOFF::GetModuleSpecifications(), ObjectFileELF::GetModuleSpecifications(), lldb_private::Target::GetOrCreateModule(), lldb_private::Platform::GetRemoteSharedModule(), PlatformDarwin::GetSharedModuleWithLocalCache(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::Handle_jModulesInfo(), lldb_private::process_gdb_remote::GDBRemoteCommunicationServerCommon::Handle_qModuleInfo(), load_standalone_binary(), ObjectFileMachO::LoadCoreFileImages(), DynamicLoaderDarwinKernel::KextImageInfo::LoadImageUsingMemoryModule(), lldb_private::Symbols::LocateExecutableSymbolFile(), Matches(), lldb_private::Module::MatchesModuleSpec(), lldb_private::TraceSessionFileParser::ParseModule(), ParseModuleSpec(), lldb_private::ModuleCache::Put(), lldb_private::minidump::ProcessMinidump::ReadModuleList(), PlatformRemoteDarwinDevice::ResolveExecutable(), and lldb_private::Platform::ResolveRemoteExecutable().

◆ GetUUID() [2/2]

const UUID& lldb_private::ModuleSpec::GetUUID ( ) const
inline

Definition at line 106 of file ModuleSpec.h.

References m_uuid.

◆ GetUUIDPtr() [1/2]

UUID* lldb_private::ModuleSpec::GetUUIDPtr ( )
inline

◆ GetUUIDPtr() [2/2]

const UUID* lldb_private::ModuleSpec::GetUUIDPtr ( ) const
inline

Definition at line 100 of file ModuleSpec.h.

References lldb_private::UUID::IsValid(), and m_uuid.

◆ Matches()

bool lldb_private::ModuleSpec::Matches ( const ModuleSpec match_module_spec,
bool  exact_arch_match 
) const
inline

◆ operator bool()

lldb_private::ModuleSpec::operator bool ( ) const
inlineexplicit

◆ SetObjectOffset()

void lldb_private::ModuleSpec::SetObjectOffset ( uint64_t  object_offset)
inline

◆ SetObjectSize()

void lldb_private::ModuleSpec::SetObjectSize ( uint64_t  object_size)
inline

Member Data Documentation

◆ m_arch

ArchSpec lldb_private::ModuleSpec::m_arch
protected

Definition at line 270 of file ModuleSpec.h.

Referenced by Clear(), Dump(), GetArchitecture(), GetArchitecturePtr(), and operator bool().

◆ m_data

lldb::DataBufferSP lldb_private::ModuleSpec::m_data = {}
protected

Definition at line 277 of file ModuleSpec.h.

Referenced by GetData().

◆ m_file

FileSpec lldb_private::ModuleSpec::m_file
protected

Definition at line 267 of file ModuleSpec.h.

Referenced by Clear(), Dump(), GetFileSpec(), GetFileSpecPtr(), ModuleSpec(), and operator bool().

◆ m_object_mod_time

llvm::sys::TimePoint lldb_private::ModuleSpec::m_object_mod_time
protected

Definition at line 275 of file ModuleSpec.h.

Referenced by Clear(), Dump(), GetObjectModificationTime(), and operator bool().

◆ m_object_name

ConstString lldb_private::ModuleSpec::m_object_name
protected

Definition at line 272 of file ModuleSpec.h.

Referenced by Clear(), Dump(), GetObjectName(), and operator bool().

◆ m_object_offset

uint64_t lldb_private::ModuleSpec::m_object_offset = 0
protected

Definition at line 273 of file ModuleSpec.h.

Referenced by Clear(), Dump(), GetObjectOffset(), and SetObjectOffset().

◆ m_object_size

uint64_t lldb_private::ModuleSpec::m_object_size = 0
protected

Definition at line 274 of file ModuleSpec.h.

Referenced by Clear(), Dump(), GetObjectSize(), ModuleSpec(), operator bool(), and SetObjectSize().

◆ m_platform_file

FileSpec lldb_private::ModuleSpec::m_platform_file
protected

Definition at line 268 of file ModuleSpec.h.

Referenced by Clear(), Dump(), GetPlatformFileSpec(), GetPlatformFileSpecPtr(), and operator bool().

◆ m_source_mappings

PathMappingList lldb_private::ModuleSpec::m_source_mappings
mutableprotected

Definition at line 276 of file ModuleSpec.h.

Referenced by Clear(), and GetSourceMappingList().

◆ m_symbol_file

FileSpec lldb_private::ModuleSpec::m_symbol_file
protected

Definition at line 269 of file ModuleSpec.h.

Referenced by Clear(), Dump(), GetSymbolFileSpec(), GetSymbolFileSpecPtr(), and operator bool().

◆ m_uuid

UUID lldb_private::ModuleSpec::m_uuid
protected

Definition at line 271 of file ModuleSpec.h.

Referenced by Clear(), Dump(), GetUUID(), GetUUIDPtr(), and operator bool().


The documentation for this class was generated from the following file: