LLDB mainline
Public Types | Public Member Functions | Public Attributes | List of all members
lldb_private::npdb::CompilandIndexItem Struct Reference

Represents a single compile unit. More...

#include <CompileUnitIndex.h>

Public Types

using GlobalLineTable = lldb_private::RangeDataVector< lldb::addr_t, uint32_t, std::pair< uint32_t, uint32_t > >
 

Public Member Functions

 CompilandIndexItem (PdbCompilandId m_id, llvm::pdb::ModuleDebugStreamRef debug_stream, llvm::pdb::DbiModuleDescriptor descriptor)
 

Public Attributes

PdbCompilandId m_id
 
llvm::pdb::ModuleDebugStreamRef m_debug_stream
 
llvm::pdb::DbiModuleDescriptor m_module_descriptor
 
llvm::codeview::StringsAndChecksumsRef m_strings
 
std::vector< llvm::StringRef > m_file_list
 
std::map< lldb::addr_t, PdbSymUidm_symbols_by_va
 
std::optional< llvm::codeview::Compile3Sym > m_compile_opts
 
std::optional< llvm::codeview::ObjNameSym > m_obj_name
 
llvm::SmallVector< llvm::codeview::TypeIndex, 5 > m_build_info
 
std::map< llvm::codeview::TypeIndex, llvm::codeview::InlineeSourceLine > m_inline_map
 
GlobalLineTable m_global_line_table
 

Detailed Description

Represents a single compile unit.

This class is useful for collecting the important accessors and information about a compile unit from disparate parts of the PDB into a single place, simplifying acess to compile unit information for the callers.

Definition at line 40 of file CompileUnitIndex.h.

Member Typedef Documentation

◆ GlobalLineTable

Definition at line 82 of file CompileUnitIndex.h.

Constructor & Destructor Documentation

◆ CompilandIndexItem()

CompilandIndexItem::CompilandIndexItem ( PdbCompilandId  m_id,
llvm::pdb::ModuleDebugStreamRef  debug_stream,
llvm::pdb::DbiModuleDescriptor  descriptor 
)

Definition at line 127 of file CompileUnitIndex.cpp.

Member Data Documentation

◆ m_build_info

llvm::SmallVector<llvm::codeview::TypeIndex, 5> lldb_private::npdb::CompilandIndexItem::m_build_info

◆ m_compile_opts

std::optional<llvm::codeview::Compile3Sym> lldb_private::npdb::CompilandIndexItem::m_compile_opts

◆ m_debug_stream

llvm::pdb::ModuleDebugStreamRef lldb_private::npdb::CompilandIndexItem::m_debug_stream

◆ m_file_list

std::vector<llvm::StringRef> lldb_private::npdb::CompilandIndexItem::m_file_list

◆ m_global_line_table

GlobalLineTable lldb_private::npdb::CompilandIndexItem::m_global_line_table

◆ m_id

PdbCompilandId lldb_private::npdb::CompilandIndexItem::m_id

◆ m_inline_map

std::map<llvm::codeview::TypeIndex, llvm::codeview::InlineeSourceLine> lldb_private::npdb::CompilandIndexItem::m_inline_map

◆ m_module_descriptor

llvm::pdb::DbiModuleDescriptor lldb_private::npdb::CompilandIndexItem::m_module_descriptor

Definition at line 52 of file CompileUnitIndex.h.

◆ m_obj_name

std::optional<llvm::codeview::ObjNameSym> lldb_private::npdb::CompilandIndexItem::m_obj_name

Definition at line 69 of file CompileUnitIndex.h.

Referenced by ParseExtendedInfo(), and ParseObjname().

◆ m_strings

llvm::codeview::StringsAndChecksumsRef lldb_private::npdb::CompilandIndexItem::m_strings

◆ m_symbols_by_va

std::map<lldb::addr_t, PdbSymUid> lldb_private::npdb::CompilandIndexItem::m_symbols_by_va

The documentation for this struct was generated from the following files: