clang
8.0.0
|
Information about a module that has been loaded by the ASTReader. More...
#include "clang/Serialization/Module.h"
Public Member Functions | |
ModuleFile (ModuleKind Kind, unsigned Generation) | |
~ModuleFile () | |
std::string | getTimestampFilename () const |
bool | isDirectlyImported () const |
Determine whether this module was directly imported at any point during translation. More... | |
bool | isModule () const |
Is this a module file for a module (rather than a PCH or similar). More... | |
void | dump () |
Dump debugging output for this module. More... | |
Public Attributes | |
unsigned | Index = 0 |
The index of this module in the list of modules. More... | |
ModuleKind | Kind |
The type of this module. More... | |
std::string | FileName |
The file name of the module file. More... | |
std::string | ModuleName |
The name of the module. More... | |
std::string | BaseDirectory |
The base directory of the module. More... | |
std::string | OriginalSourceFileName |
The original source file name that was used to build the primary AST file, which may have been modified for relocatable-pch support. More... | |
std::string | ActualOriginalSourceFileName |
The actual original source file name that was used to build this AST file. More... | |
FileID | OriginalSourceFileID |
The file ID for the original source file that was used to build this AST file. More... | |
std::string | OriginalDir |
The directory that the PCH was originally created in. More... | |
std::string | ModuleMapPath |
bool | RelocatablePCH = false |
Whether this precompiled header is a relocatable PCH file. More... | |
bool | HasTimestamps = false |
Whether timestamps are included in this module file. More... | |
bool | PCHHasObjectFile = false |
Whether the PCH has a corresponding object file. More... | |
const FileEntry * | File = nullptr |
The file entry for the module file. More... | |
ASTFileSignature | Signature |
The signature of the module file, which may be used instead of the size and modification time to identify this particular file. More... | |
bool | DirectlyImported = false |
Whether this module has been directly imported by the user. More... | |
unsigned | Generation |
The generation of which this module file is a part. More... | |
llvm::MemoryBuffer * | Buffer |
The memory buffer that stores the data associated with this AST file, owned by the PCMCache in the ModuleManager. More... | |
uint64_t | SizeInBits = 0 |
The size of this file, in bits. More... | |
uint64_t | GlobalBitOffset = 0 |
The global bit offset (or base) of this module. More... | |
StringRef | Data |
The serialized bitstream data for this file. More... | |
llvm::BitstreamCursor | Stream |
The main bitstream cursor for the main block. More... | |
SourceLocation | DirectImportLoc |
The source location where the module was explicitly or implicitly imported in the local translation unit. More... | |
SourceLocation | ImportLoc |
The source location where this module was first imported. More... | |
SourceLocation | FirstLoc |
The first source location in this module. More... | |
std::vector< std::unique_ptr< ModuleFileExtensionReader > > | ExtensionReaders |
The list of extension readers that are attached to this module file. More... | |
StringRef | ModuleOffsetMap |
The module offset map data for this file. More... | |
llvm::BitstreamCursor | InputFilesCursor |
The cursor to the start of the input-files block. More... | |
const llvm::support::unaligned_uint64_t * | InputFileOffsets = nullptr |
Offsets for all of the input file entries in the AST file. More... | |
std::vector< InputFile > | InputFilesLoaded |
The input files that have been loaded from this AST file. More... | |
unsigned | NumUserInputFiles = 0 |
uint64_t | InputFilesValidationTimestamp = 0 |
If non-zero, specifies the time when we last validated input files. More... | |
llvm::BitstreamCursor | SLocEntryCursor |
Cursor used to read source location entries. More... | |
unsigned | LocalNumSLocEntries = 0 |
The number of source location entries in this AST file. More... | |
int | SLocEntryBaseID = 0 |
The base ID in the source manager's view of this module. More... | |
unsigned | SLocEntryBaseOffset = 0 |
The base offset in the source manager's view of this module. More... | |
const uint32_t * | SLocEntryOffsets = nullptr |
Offsets for all of the source location entries in the AST file. More... | |
SmallVector< uint64_t, 4 > | PreloadSLocEntries |
SLocEntries that we're going to preload. More... | |
ContinuousRangeMap< uint32_t, int, 2 > | SLocRemap |
Remapping table for source locations in this module. More... | |
unsigned | LocalNumIdentifiers = 0 |
The number of identifiers in this AST file. More... | |
const uint32_t * | IdentifierOffsets = nullptr |
Offsets into the identifier table data. More... | |
serialization::IdentID | BaseIdentifierID = 0 |
Base identifier ID for identifiers local to this module. More... | |
ContinuousRangeMap< uint32_t, int, 2 > | IdentifierRemap |
Remapping table for identifier IDs in this module. More... | |
const char * | IdentifierTableData = nullptr |
Actual data for the on-disk hash table of identifiers. More... | |
void * | IdentifierLookupTable = nullptr |
A pointer to an on-disk hash table of opaque type IdentifierHashTable. More... | |
std::vector< unsigned > | PreloadIdentifierOffsets |
Offsets of identifiers that we're going to preload within IdentifierTableData. More... | |
llvm::BitstreamCursor | MacroCursor |
The cursor to the start of the preprocessor block, which stores all of the macro definitions. More... | |
unsigned | LocalNumMacros = 0 |
The number of macros in this AST file. More... | |
const uint32_t * | MacroOffsets = nullptr |
Offsets of macros in the preprocessor block. More... | |
serialization::MacroID | BaseMacroID = 0 |
Base macro ID for macros local to this module. More... | |
ContinuousRangeMap< uint32_t, int, 2 > | MacroRemap |
Remapping table for macro IDs in this module. More... | |
uint64_t | MacroStartOffset = 0 |
The offset of the start of the set of defined macros. More... | |
llvm::BitstreamCursor | PreprocessorDetailCursor |
The cursor to the start of the (optional) detailed preprocessing record block. More... | |
uint64_t | PreprocessorDetailStartOffset = 0 |
The offset of the start of the preprocessor detail cursor. More... | |
serialization::PreprocessedEntityID | BasePreprocessedEntityID = 0 |
Base preprocessed entity ID for preprocessed entities local to this module. More... | |
ContinuousRangeMap< uint32_t, int, 2 > | PreprocessedEntityRemap |
Remapping table for preprocessed entity IDs in this module. More... | |
const PPEntityOffset * | PreprocessedEntityOffsets = nullptr |
unsigned | NumPreprocessedEntities = 0 |
unsigned | BasePreprocessedSkippedRangeID = 0 |
Base ID for preprocessed skipped ranges local to this module. More... | |
const PPSkippedRange * | PreprocessedSkippedRangeOffsets = nullptr |
unsigned | NumPreprocessedSkippedRanges = 0 |
unsigned | LocalNumHeaderFileInfos = 0 |
The number of local HeaderFileInfo structures. More... | |
const char * | HeaderFileInfoTableData = nullptr |
Actual data for the on-disk hash table of header file information. More... | |
void * | HeaderFileInfoTable = nullptr |
The on-disk hash table that contains information about each of the header files. More... | |
unsigned | LocalNumSubmodules = 0 |
The number of submodules in this module. More... | |
serialization::SubmoduleID | BaseSubmoduleID = 0 |
Base submodule ID for submodules local to this module. More... | |
ContinuousRangeMap< uint32_t, int, 2 > | SubmoduleRemap |
Remapping table for submodule IDs in this module. More... | |
unsigned | LocalNumSelectors = 0 |
The number of selectors new to this file. More... | |
const uint32_t * | SelectorOffsets = nullptr |
Offsets into the selector lookup table's data array where each selector resides. More... | |
serialization::SelectorID | BaseSelectorID = 0 |
Base selector ID for selectors local to this module. More... | |
ContinuousRangeMap< uint32_t, int, 2 > | SelectorRemap |
Remapping table for selector IDs in this module. More... | |
const unsigned char * | SelectorLookupTableData = nullptr |
A pointer to the character data that comprises the selector table. More... | |
void * | SelectorLookupTable = nullptr |
A pointer to an on-disk hash table of opaque type ASTSelectorLookupTable. More... | |
llvm::BitstreamCursor | DeclsCursor |
DeclsCursor - This is a cursor to the start of the DECLS_BLOCK block. More... | |
unsigned | LocalNumDecls = 0 |
The number of declarations in this AST file. More... | |
const DeclOffset * | DeclOffsets = nullptr |
Offset of each declaration within the bitstream, indexed by the declaration ID (-1). More... | |
serialization::DeclID | BaseDeclID = 0 |
Base declaration ID for declarations local to this module. More... | |
ContinuousRangeMap< uint32_t, int, 2 > | DeclRemap |
Remapping table for declaration IDs in this module. More... | |
llvm::DenseMap< ModuleFile *, serialization::DeclID > | GlobalToLocalDeclIDs |
Mapping from the module files that this module file depends on to the base declaration ID for that module as it is understood within this module. More... | |
const serialization::DeclID * | FileSortedDecls = nullptr |
Array of file-level DeclIDs sorted by file. More... | |
unsigned | NumFileSortedDecls = 0 |
const serialization::ObjCCategoriesInfo * | ObjCCategoriesMap = nullptr |
Array of category list location information within this module file, sorted by the definition ID. More... | |
unsigned | LocalNumObjCCategoriesInMap = 0 |
The number of redeclaration info entries in ObjCCategoriesMap. More... | |
SmallVector< uint64_t, 1 > | ObjCCategories |
The Objective-C category lists for categories known to this module. More... | |
unsigned | LocalNumTypes = 0 |
The number of types in this AST file. More... | |
const uint32_t * | TypeOffsets = nullptr |
Offset of each type within the bitstream, indexed by the type ID, or the representation of a Type*. More... | |
serialization::TypeID | BaseTypeIndex = 0 |
Base type ID for types local to this module as represented in the global type ID space. More... | |
ContinuousRangeMap< uint32_t, int, 2 > | TypeRemap |
Remapping table for type IDs in this module. More... | |
SmallVector< uint64_t, 8 > | PragmaDiagMappings |
Diagnostic IDs and their mappings that the user changed. More... | |
llvm::SetVector< ModuleFile * > | ImportedBy |
List of modules which depend on this module. More... | |
llvm::SetVector< ModuleFile * > | Imports |
List of modules which this module depends on. More... | |
Information about a module that has been loaded by the ASTReader.
Each instance of the Module class corresponds to a single AST file, which may be a precompiled header, precompiled preamble, a module, or an AST file of some sort loaded as the main file, all of which are specific formulations of the general notion of a "module". A module may depend on any number of other modules.
|
inline |
ModuleFile::~ModuleFile | ( | ) |
Definition at line 26 of file Module.cpp.
LLVM_DUMP_METHOD void ModuleFile::dump | ( | ) |
Dump debugging output for this module.
Definition at line 48 of file Module.cpp.
References dumpLocalRemap().
Referenced by clang::ASTReader::dump().
|
inline |
Definition at line 131 of file Module.h.
Referenced by updateModuleTimestamp().
|
inline |
|
inline |
Is this a module file for a module (rather than a PCH or similar).
Definition at line 477 of file Module.h.
References dump(), clang::serialization::MK_ExplicitModule, clang::serialization::MK_ImplicitModule, and clang::serialization::MK_PrebuiltModule.
Referenced by clang::ASTReader::getModuleFileID(), clang::ASTReader::getModuleImportLoc(), clang::ASTRecordReader::isModule(), clang::ASTIdentifierIterator::Next(), clang::ASTReader::ReadPragmaDiagnosticMappings(), clang::ASTReader::resolvePendingMacro(), and clang::RewriteIncludesAction::RewriteImportsListener::visitModuleFile().
std::string clang::serialization::ModuleFile::ActualOriginalSourceFileName |
The actual original source file name that was used to build this AST file.
Definition at line 142 of file Module.h.
Referenced by isDiagnosedResult().
serialization::DeclID clang::serialization::ModuleFile::BaseDeclID = 0 |
Base declaration ID for declarations local to this module.
Definition at line 416 of file Module.h.
Referenced by clang::ASTReader::isDeclIDFromModule(), and isDiagnosedResult().
std::string clang::serialization::ModuleFile::BaseDirectory |
The base directory of the module.
Definition at line 129 of file Module.h.
Referenced by isDiagnosedResult(), clang::ASTReader::ResolveImportedPath(), and clang::ASTReader::resolvePendingMacro().
serialization::IdentID clang::serialization::ModuleFile::BaseIdentifierID = 0 |
Base identifier ID for identifiers local to this module.
Definition at line 276 of file Module.h.
Referenced by isDiagnosedResult().
serialization::MacroID clang::serialization::ModuleFile::BaseMacroID = 0 |
serialization::PreprocessedEntityID clang::serialization::ModuleFile::BasePreprocessedEntityID = 0 |
Base preprocessed entity ID for preprocessed entities local to this module.
Definition at line 331 of file Module.h.
Referenced by isDiagnosedResult().
unsigned clang::serialization::ModuleFile::BasePreprocessedSkippedRangeID = 0 |
Base ID for preprocessed skipped ranges local to this module.
Definition at line 340 of file Module.h.
Referenced by isDiagnosedResult(), and clang::ASTReader::ReadSkippedRange().
serialization::SelectorID clang::serialization::ModuleFile::BaseSelectorID = 0 |
Base selector ID for selectors local to this module.
Definition at line 384 of file Module.h.
Referenced by isDiagnosedResult().
serialization::SubmoduleID clang::serialization::ModuleFile::BaseSubmoduleID = 0 |
Base submodule ID for submodules local to this module.
Definition at line 367 of file Module.h.
Referenced by clang::ASTReader::getModuleFileID().
serialization::TypeID clang::serialization::ModuleFile::BaseTypeIndex = 0 |
Base type ID for types local to this module as represented in the global type ID space.
Definition at line 456 of file Module.h.
Referenced by isDiagnosedResult().
llvm::MemoryBuffer* clang::serialization::ModuleFile::Buffer |
The memory buffer that stores the data associated with this AST file, owned by the PCMCache in the ModuleManager.
Definition at line 179 of file Module.h.
Referenced by moduleKindForDiagnostic().
StringRef clang::serialization::ModuleFile::Data |
The serialized bitstream data for this file.
Definition at line 188 of file Module.h.
Referenced by moduleKindForDiagnostic().
const DeclOffset* clang::serialization::ModuleFile::DeclOffsets = nullptr |
Offset of each declaration within the bitstream, indexed by the declaration ID (-1).
Definition at line 413 of file Module.h.
Referenced by isDiagnosedResult().
ContinuousRangeMap<uint32_t, int, 2> clang::serialization::ModuleFile::DeclRemap |
Remapping table for declaration IDs in this module.
Definition at line 419 of file Module.h.
Referenced by clang::ASTReader::getGlobalDeclID(), and isDiagnosedResult().
llvm::BitstreamCursor clang::serialization::ModuleFile::DeclsCursor |
DeclsCursor - This is a cursor to the start of the DECLS_BLOCK block.
It has read all the abbreviations at the start of the block and is ready to jump around with these in context.
Definition at line 406 of file Module.h.
Referenced by isDiagnosedResult(), clang::ASTRecordReader::readLexicalDeclContextStorage(), clang::ASTReader::ReadSubExpr(), and clang::ASTRecordReader::readVisibleDeclContextStorage().
SourceLocation clang::serialization::ModuleFile::DirectImportLoc |
The source location where the module was explicitly or implicitly imported in the local translation unit.
If module A depends on and imports module B, both modules will have the same DirectImportLoc, but different ImportLoc (B's ImportLoc will be a source location inside module A).
WARNING: This is largely useless. It doesn't tell you when a module was made visible, just when the first submodule of that module was imported.
Whether this module has been directly imported by the user.
Definition at line 172 of file Module.h.
Referenced by updateModuleImports().
std::vector<std::unique_ptr<ModuleFileExtensionReader> > clang::serialization::ModuleFile::ExtensionReaders |
The list of extension readers that are attached to this module file.
Definition at line 212 of file Module.h.
Referenced by parseModuleFileExtensionMetadata().
const FileEntry* clang::serialization::ModuleFile::File = nullptr |
The file entry for the module file.
Definition at line 164 of file Module.h.
Referenced by clang::ASTUnit::getPCHFile().
std::string clang::serialization::ModuleFile::FileName |
The file name of the module file.
Definition at line 123 of file Module.h.
Referenced by clang::ASTUnit::getASTFileName(), clang::ASTReader::getSourceDescriptor(), isDiagnosedResult(), moduleKindForDiagnostic(), and clang::ASTReader::resolvePendingMacro().
const serialization::DeclID* clang::serialization::ModuleFile::FileSortedDecls = nullptr |
Array of file-level DeclIDs sorted by file.
Definition at line 431 of file Module.h.
Referenced by clang::ASTReader::getModuleFileLevelDecls(), and isDiagnosedResult().
SourceLocation clang::serialization::ModuleFile::FirstLoc |
The first source location in this module.
Definition at line 208 of file Module.h.
Referenced by isDiagnosedResult().
unsigned clang::serialization::ModuleFile::Generation |
The generation of which this module file is a part.
Definition at line 175 of file Module.h.
Referenced by clang::serialization::ReadMethodPoolVisitor::operator()().
uint64_t clang::serialization::ModuleFile::GlobalBitOffset = 0 |
The global bit offset (or base) of this module.
Definition at line 185 of file Module.h.
Referenced by isConsumerInterestedIn(), and clang::ASTReader::ReadAST().
llvm::DenseMap<ModuleFile *, serialization::DeclID> clang::serialization::ModuleFile::GlobalToLocalDeclIDs |
Mapping from the module files that this module file depends on to the base declaration ID for that module as it is understood within this module.
This is effectively a reverse global-to-local mapping for declaration IDs, so that we can interpret a true global ID (for this translation unit) as a local ID (for this module file).
Definition at line 428 of file Module.h.
Referenced by isDiagnosedResult(), and clang::ASTReader::mapGlobalIDToModuleFileGlobalID().
Whether timestamps are included in this module file.
Definition at line 158 of file Module.h.
Referenced by clang::serialization::reader::HeaderFileInfoTrait::GetInternalKey(), and isDiagnosedResult().
void* clang::serialization::ModuleFile::HeaderFileInfoTable = nullptr |
The on-disk hash table that contains information about each of the header files.
Definition at line 359 of file Module.h.
Referenced by isDiagnosedResult().
const char* clang::serialization::ModuleFile::HeaderFileInfoTableData = nullptr |
Actual data for the on-disk hash table of header file information.
This pointer points into a memory buffer, where the on-disk hash table for header file information actually lives.
Definition at line 355 of file Module.h.
Referenced by isDiagnosedResult().
void* clang::serialization::ModuleFile::IdentifierLookupTable = nullptr |
A pointer to an on-disk hash table of opaque type IdentifierHashTable.
Definition at line 289 of file Module.h.
Referenced by isDiagnosedResult(), and clang::ASTIdentifierIterator::Next().
const uint32_t* clang::serialization::ModuleFile::IdentifierOffsets = nullptr |
Offsets into the identifier table data.
This array is indexed by the identifier ID (-1), and provides the offset into IdentifierTableData where the string data is stored.
Definition at line 273 of file Module.h.
Referenced by isDiagnosedResult().
ContinuousRangeMap<uint32_t, int, 2> clang::serialization::ModuleFile::IdentifierRemap |
Remapping table for identifier IDs in this module.
Definition at line 279 of file Module.h.
Referenced by clang::ASTReader::getGlobalIdentifierID(), and isDiagnosedResult().
const char* clang::serialization::ModuleFile::IdentifierTableData = nullptr |
Actual data for the on-disk hash table of identifiers.
This pointer points into a memory buffer, where the on-disk hash table for identifiers actually lives.
Definition at line 285 of file Module.h.
Referenced by isDiagnosedResult().
llvm::SetVector<ModuleFile *> clang::serialization::ModuleFile::ImportedBy |
List of modules which depend on this module.
Definition at line 467 of file Module.h.
Referenced by clang::ASTReader::getModuleImportLoc(), getTopImportImplicitModule(), updateModuleImports(), and clang::serialization::ModuleManager::visit().
SourceLocation clang::serialization::ModuleFile::ImportLoc |
The source location where this module was first imported.
Definition at line 205 of file Module.h.
Referenced by clang::TestModuleFileExtension::createExtensionReader(), clang::ASTReader::getModuleImportLoc(), and updateModuleImports().
llvm::SetVector<ModuleFile *> clang::serialization::ModuleFile::Imports |
List of modules which this module depends on.
Definition at line 470 of file Module.h.
Referenced by llvm::GraphTraits< ModuleManager >::child_begin(), llvm::GraphTraits< ModuleManager >::child_end(), updateModuleImports(), and clang::serialization::ModuleManager::visit().
unsigned clang::serialization::ModuleFile::Index = 0 |
The index of this module in the list of modules.
Definition at line 117 of file Module.h.
Referenced by clang::serialization::ModuleManager::visit().
const llvm::support::unaligned_uint64_t* clang::serialization::ModuleFile::InputFileOffsets = nullptr |
Offsets for all of the input file entries in the AST file.
Definition at line 224 of file Module.h.
Referenced by isDiagnosedResult(), and clang::ASTReader::resolvePendingMacro().
llvm::BitstreamCursor clang::serialization::ModuleFile::InputFilesCursor |
The cursor to the start of the input-files block.
Definition at line 221 of file Module.h.
Referenced by isDiagnosedResult(), and clang::ASTReader::resolvePendingMacro().
std::vector<InputFile> clang::serialization::ModuleFile::InputFilesLoaded |
The input files that have been loaded from this AST file.
Definition at line 227 of file Module.h.
Referenced by isDiagnosedResult(), clang::ASTReader::resolvePendingMacro(), clang::ASTReader::visitInputFiles(), and clang::ASTReader::visitTopLevelModuleMaps().
uint64_t clang::serialization::ModuleFile::InputFilesValidationTimestamp = 0 |
If non-zero, specifies the time when we last validated input files.
Zero means we never validated them.
The time is specified in seconds since the start of the Epoch.
Definition at line 237 of file Module.h.
Referenced by isDiagnosedResult().
ModuleKind clang::serialization::ModuleFile::Kind |
The type of this module.
Definition at line 120 of file Module.h.
Referenced by AddLazyVectorDecls(), clang::ASTUnit::getPCHFile(), getTopImportImplicitModule(), isDiagnosedResult(), moduleKindForDiagnostic(), and clang::ASTReader::ReadPragmaDiagnosticMappings().
unsigned clang::serialization::ModuleFile::LocalNumDecls = 0 |
The number of declarations in this AST file.
Definition at line 409 of file Module.h.
Referenced by clang::ASTReader::isDeclIDFromModule(), and isDiagnosedResult().
unsigned clang::serialization::ModuleFile::LocalNumHeaderFileInfos = 0 |
The number of local HeaderFileInfo structures.
Definition at line 348 of file Module.h.
Referenced by isDiagnosedResult().
unsigned clang::serialization::ModuleFile::LocalNumIdentifiers = 0 |
The number of identifiers in this AST file.
Definition at line 266 of file Module.h.
Referenced by isDiagnosedResult().
unsigned clang::serialization::ModuleFile::LocalNumMacros = 0 |
unsigned clang::serialization::ModuleFile::LocalNumObjCCategoriesInMap = 0 |
The number of redeclaration info entries in ObjCCategoriesMap.
Definition at line 439 of file Module.h.
Referenced by isDiagnosedResult().
unsigned clang::serialization::ModuleFile::LocalNumSelectors = 0 |
The number of selectors new to this file.
This is the number of entries in SelectorOffsets.
Definition at line 377 of file Module.h.
Referenced by isDiagnosedResult().
unsigned clang::serialization::ModuleFile::LocalNumSLocEntries = 0 |
The number of source location entries in this AST file.
Definition at line 245 of file Module.h.
Referenced by isDiagnosedResult().
unsigned clang::serialization::ModuleFile::LocalNumSubmodules = 0 |
unsigned clang::serialization::ModuleFile::LocalNumTypes = 0 |
The number of types in this AST file.
Definition at line 448 of file Module.h.
Referenced by isDiagnosedResult().
llvm::BitstreamCursor clang::serialization::ModuleFile::MacroCursor |
The cursor to the start of the preprocessor block, which stores all of the macro definitions.
Definition at line 299 of file Module.h.
Referenced by isDiagnosedResult(), clang::ASTReader::ReadMacroRecord(), and clang::ASTReader::resolvePendingMacro().
const uint32_t* clang::serialization::ModuleFile::MacroOffsets = nullptr |
ContinuousRangeMap<uint32_t, int, 2> clang::serialization::ModuleFile::MacroRemap |
Remapping table for macro IDs in this module.
Definition at line 315 of file Module.h.
Referenced by clang::ASTReader::getGlobalMacroID().
uint64_t clang::serialization::ModuleFile::MacroStartOffset = 0 |
The offset of the start of the set of defined macros.
Definition at line 318 of file Module.h.
Referenced by isDiagnosedResult().
std::string clang::serialization::ModuleFile::ModuleMapPath |
std::string clang::serialization::ModuleFile::ModuleName |
The name of the module.
Definition at line 126 of file Module.h.
Referenced by clang::ASTReader::getModuleImportLoc(), llvm::DOTGraphTraits< ModuleManager >::getNodeLabel(), clang::ASTReader::getOwningModuleNameForDiagnostic(), getTopImportImplicitModule(), isDiagnosedResult(), moduleKindForDiagnostic(), and clang::RewriteIncludesAction::RewriteImportsListener::visitModuleFile().
StringRef clang::serialization::ModuleFile::ModuleOffsetMap |
The module offset map data for this file.
If non-empty, the various ContinuousRangeMaps described below have not yet been populated.
Definition at line 216 of file Module.h.
Referenced by clang::ASTReader::getGlobalDeclID(), clang::ASTReader::getGlobalIdentifierID(), clang::ASTReader::getGlobalMacroID(), clang::ASTReader::getGlobalPreprocessedEntityID(), clang::ASTReader::getGlobalSelectorID(), clang::ASTReader::getGlobalSubmoduleID(), clang::ASTReader::getGlobalTypeID(), isDiagnosedResult(), and clang::ASTReader::TranslateSourceLocation().
unsigned clang::serialization::ModuleFile::NumFileSortedDecls = 0 |
Definition at line 432 of file Module.h.
Referenced by clang::ASTReader::getModuleFileLevelDecls(), and isDiagnosedResult().
unsigned clang::serialization::ModuleFile::NumPreprocessedEntities = 0 |
Definition at line 337 of file Module.h.
Referenced by clang::ASTReader::getTotalNumPreprocessedEntities(), and isDiagnosedResult().
unsigned clang::serialization::ModuleFile::NumPreprocessedSkippedRanges = 0 |
Definition at line 343 of file Module.h.
Referenced by isDiagnosedResult().
unsigned clang::serialization::ModuleFile::NumUserInputFiles = 0 |
Definition at line 231 of file Module.h.
Referenced by isDiagnosedResult(), and clang::ASTReader::visitInputFiles().
SmallVector<uint64_t, 1> clang::serialization::ModuleFile::ObjCCategories |
The Objective-C category lists for categories known to this module.
Definition at line 443 of file Module.h.
Referenced by isDiagnosedResult().
const serialization::ObjCCategoriesInfo* clang::serialization::ModuleFile::ObjCCategoriesMap = nullptr |
Array of category list location information within this module file, sorted by the definition ID.
Definition at line 436 of file Module.h.
Referenced by isDiagnosedResult().
std::string clang::serialization::ModuleFile::OriginalDir |
The directory that the PCH was originally created in.
Used to allow resolving headers even after headers+PCH was moved to a new path.
Definition at line 150 of file Module.h.
Referenced by clang::ASTReader::getSourceDescriptor(), isDiagnosedResult(), and clang::ASTReader::resolvePendingMacro().
FileID clang::serialization::ModuleFile::OriginalSourceFileID |
The file ID for the original source file that was used to build this AST file.
Definition at line 146 of file Module.h.
Referenced by isDiagnosedResult(), and clang::ASTReader::ReadPragmaDiagnosticMappings().
std::string clang::serialization::ModuleFile::OriginalSourceFileName |
The original source file name that was used to build the primary AST file, which may have been modified for relocatable-pch support.
Definition at line 138 of file Module.h.
Referenced by clang::ASTReader::getOriginalSourceFile(), clang::ASTReader::getSourceDescriptor(), and isDiagnosedResult().
Whether the PCH has a corresponding object file.
Definition at line 161 of file Module.h.
Referenced by clang::ASTReader::DeclIsFromPCHWithObjectFile(), and isDiagnosedResult().
SmallVector<uint64_t, 8> clang::serialization::ModuleFile::PragmaDiagMappings |
Diagnostic IDs and their mappings that the user changed.
Definition at line 464 of file Module.h.
Referenced by moduleKindForDiagnostic(), and clang::ASTReader::ReadPragmaDiagnosticMappings().
std::vector<unsigned> clang::serialization::ModuleFile::PreloadIdentifierOffsets |
Offsets of identifiers that we're going to preload within IdentifierTableData.
Definition at line 293 of file Module.h.
Referenced by isDiagnosedResult().
SmallVector<uint64_t, 4> clang::serialization::ModuleFile::PreloadSLocEntries |
SLocEntries that we're going to preload.
Definition at line 258 of file Module.h.
Referenced by isDiagnosedResult(), and clang::ASTReader::ReadAST().
const PPEntityOffset* clang::serialization::ModuleFile::PreprocessedEntityOffsets = nullptr |
Definition at line 336 of file Module.h.
Referenced by isDiagnosedResult().
ContinuousRangeMap<uint32_t, int, 2> clang::serialization::ModuleFile::PreprocessedEntityRemap |
Remapping table for preprocessed entity IDs in this module.
Definition at line 334 of file Module.h.
Referenced by clang::ASTReader::getGlobalPreprocessedEntityID(), and isDiagnosedResult().
const PPSkippedRange* clang::serialization::ModuleFile::PreprocessedSkippedRangeOffsets = nullptr |
Definition at line 342 of file Module.h.
Referenced by isDiagnosedResult().
llvm::BitstreamCursor clang::serialization::ModuleFile::PreprocessorDetailCursor |
The cursor to the start of the (optional) detailed preprocessing record block.
Definition at line 324 of file Module.h.
Referenced by isDiagnosedResult().
uint64_t clang::serialization::ModuleFile::PreprocessorDetailStartOffset = 0 |
The offset of the start of the preprocessor detail cursor.
Definition at line 327 of file Module.h.
Referenced by isDiagnosedResult().
Whether this precompiled header is a relocatable PCH file.
Definition at line 155 of file Module.h.
Referenced by isDiagnosedResult().
void* clang::serialization::ModuleFile::SelectorLookupTable = nullptr |
A pointer to an on-disk hash table of opaque type ASTSelectorLookupTable.
This hash table provides the IDs of all selectors, and the associated instance and factory methods.
Definition at line 399 of file Module.h.
Referenced by isDiagnosedResult(), and clang::serialization::ReadMethodPoolVisitor::operator()().
const unsigned char* clang::serialization::ModuleFile::SelectorLookupTableData = nullptr |
A pointer to the character data that comprises the selector table.
The SelectorOffsets table refers into this memory.
Definition at line 392 of file Module.h.
Referenced by isDiagnosedResult().
const uint32_t* clang::serialization::ModuleFile::SelectorOffsets = nullptr |
Offsets into the selector lookup table's data array where each selector resides.
Definition at line 381 of file Module.h.
Referenced by isDiagnosedResult().
ContinuousRangeMap<uint32_t, int, 2> clang::serialization::ModuleFile::SelectorRemap |
Remapping table for selector IDs in this module.
Definition at line 387 of file Module.h.
Referenced by clang::ASTReader::getGlobalSelectorID(), and isDiagnosedResult().
ASTFileSignature clang::serialization::ModuleFile::Signature |
The signature of the module file, which may be used instead of the size and modification time to identify this particular file.
Definition at line 168 of file Module.h.
Referenced by clang::ASTReader::getSourceDescriptor(), and moduleKindForDiagnostic().
uint64_t clang::serialization::ModuleFile::SizeInBits = 0 |
The size of this file, in bits.
Definition at line 182 of file Module.h.
Referenced by moduleKindForDiagnostic(), and clang::ASTReader::ReadAST().
int clang::serialization::ModuleFile::SLocEntryBaseID = 0 |
The base ID in the source manager's view of this module.
Definition at line 248 of file Module.h.
Referenced by isDiagnosedResult(), and clang::serialization::reader::ASTDeclContextNameLookupTrait::ReadDataInto().
unsigned clang::serialization::ModuleFile::SLocEntryBaseOffset = 0 |
The base offset in the source manager's view of this module.
Definition at line 251 of file Module.h.
Referenced by isDiagnosedResult().
llvm::BitstreamCursor clang::serialization::ModuleFile::SLocEntryCursor |
Cursor used to read source location entries.
Definition at line 242 of file Module.h.
Referenced by clang::serialization::reader::ASTDeclContextNameLookupTrait::ReadDataInto().
const uint32_t* clang::serialization::ModuleFile::SLocEntryOffsets = nullptr |
Offsets for all of the source location entries in the AST file.
Definition at line 255 of file Module.h.
Referenced by isDiagnosedResult().
ContinuousRangeMap<uint32_t, int, 2> clang::serialization::ModuleFile::SLocRemap |
Remapping table for source locations in this module.
Definition at line 261 of file Module.h.
Referenced by isDiagnosedResult(), and clang::ASTReader::TranslateSourceLocation().
llvm::BitstreamCursor clang::serialization::ModuleFile::Stream |
The main bitstream cursor for the main block.
Definition at line 191 of file Module.h.
Referenced by clang::ASTReader::isAcceptableASTFile(), isDiagnosedResult(), moduleKindForDiagnostic(), parseModuleFileExtensionMetadata(), clang::ASTReader::ReadAST(), and clang::serialization::reader::ASTDeclContextNameLookupTrait::ReadDataInto().
ContinuousRangeMap<uint32_t, int, 2> clang::serialization::ModuleFile::SubmoduleRemap |
Remapping table for submodule IDs in this module.
Definition at line 370 of file Module.h.
Referenced by clang::ASTReader::getGlobalSubmoduleID().
const uint32_t* clang::serialization::ModuleFile::TypeOffsets = nullptr |
Offset of each type within the bitstream, indexed by the type ID, or the representation of a Type*.
Definition at line 452 of file Module.h.
Referenced by isDiagnosedResult().
ContinuousRangeMap<uint32_t, int, 2> clang::serialization::ModuleFile::TypeRemap |
Remapping table for type IDs in this module.
Definition at line 459 of file Module.h.
Referenced by clang::ASTReader::getGlobalTypeID(), and isDiagnosedResult().