clang  3.7.0
Public Types | Public Member Functions | Public Attributes | List of all members
clang::serialization::ModuleFile Class Reference

Information about a module that has been loaded by the ASTReader. More...

#include <Module.h>

Collaboration diagram for clang::serialization::ModuleFile:
[legend]

Public Types

typedef llvm::DenseMap< const
DeclContext *, DeclContextInfo
DeclContextInfosMap
 

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...
 
void dump ()
 Dump debugging output for this module. More...
 

Public Attributes

unsigned Index
 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. Used to allow resolving headers even after headers+PCH was moved to a new path. More...
 
std::string ModuleMapPath
 
bool RelocatablePCH
 Whether this precompiled header is a relocatable PCH file. More...
 
const FileEntryFile
 The file entry for the module file. More...
 
ASTFileSignature Signature
 The signature of the module file, which may be used along with size and modification time to identify this particular file. More...
 
bool DirectlyImported
 Whether this module has been directly imported by the user. More...
 
unsigned Generation
 The generation of which this module file is a part. More...
 
std::unique_ptr
< llvm::MemoryBuffer > 
Buffer
 The memory buffer that stores the data associated with this AST file. More...
 
uint64_t SizeInBits
 The size of this file, in bits. More...
 
uint64_t GlobalBitOffset
 The global bit offset (or base) of this module. More...
 
llvm::BitstreamReader StreamFile
 The bitstream reader from which we'll read the AST 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...
 
llvm::BitstreamCursor InputFilesCursor
 The cursor to the start of the input-files block. More...
 
const
llvm::support::unaligned_uint64_t * 
InputFileOffsets
 Offsets for all of the input file entries in the AST file. More...
 
std::vector< InputFileInputFilesLoaded
 The input files that have been loaded from this AST file. More...
 
uint64_t InputFilesValidationTimestamp
 If non-zero, specifies the time when we last validated input files. Zero means we never validated them. More...
 
llvm::BitstreamCursor SLocEntryCursor
 Cursor used to read source location entries. More...
 
unsigned LocalNumSLocEntries
 The number of source location entries in this AST file. More...
 
int SLocEntryBaseID
 The base ID in the source manager's view of this module. More...
 
unsigned SLocEntryBaseOffset
 The base offset in the source manager's view of this module. More...
 
const uint32_t * SLocEntryOffsets
 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
 The number of identifiers in this AST file. More...
 
const uint32_t * IdentifierOffsets
 Offsets into the identifier table data. More...
 
serialization::IdentID BaseIdentifierID
 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
 Actual data for the on-disk hash table of identifiers. More...
 
void * IdentifierLookupTable
 A pointer to an on-disk hash table of opaque type IdentifierHashTable. More...
 
llvm::BitstreamCursor MacroCursor
 The cursor to the start of the preprocessor block, which stores all of the macro definitions. More...
 
unsigned LocalNumMacros
 The number of macros in this AST file. More...
 
const uint32_t * MacroOffsets
 Offsets of macros in the preprocessor block. More...
 
serialization::MacroID BaseMacroID
 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
 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
 The offset of the start of the preprocessor detail cursor. More...
 
serialization::PreprocessedEntityID BasePreprocessedEntityID
 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 PPEntityOffsetPreprocessedEntityOffsets
 
unsigned NumPreprocessedEntities
 
unsigned LocalNumHeaderFileInfos
 The number of local HeaderFileInfo structures. More...
 
const char * HeaderFileInfoTableData
 Actual data for the on-disk hash table of header file information. More...
 
void * HeaderFileInfoTable
 The on-disk hash table that contains information about each of the header files. More...
 
unsigned LocalNumSubmodules
 The number of submodules in this module. More...
 
serialization::SubmoduleID BaseSubmoduleID
 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
 The number of selectors new to this file. More...
 
const uint32_t * SelectorOffsets
 Offsets into the selector lookup table's data array where each selector resides. More...
 
serialization::SelectorID BaseSelectorID
 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
 A pointer to the character data that comprises the selector table. More...
 
void * SelectorLookupTable
 A pointer to an on-disk hash table of opaque type ASTSelectorLookupTable. More...
 
llvm::BitstreamCursor DeclsCursor
 
unsigned LocalNumDecls
 The number of declarations in this AST file. More...
 
const DeclOffsetDeclOffsets
 Offset of each declaration within the bitstream, indexed by the declaration ID (-1). More...
 
serialization::DeclID BaseDeclID
 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...
 
unsigned LocalNumCXXBaseSpecifiers
 The number of C++ base specifier sets in this AST file. More...
 
const uint32_t * CXXBaseSpecifiersOffsets
 Offset of each C++ base specifier set within the bitstream, indexed by the C++ base specifier set ID (-1). More...
 
unsigned LocalNumCXXCtorInitializers
 The number of C++ ctor initializer lists in this AST file. More...
 
const uint32_t * CXXCtorInitializersOffsets
 Offset of each C++ ctor initializer list within the bitstream, indexed by the C++ ctor initializer list ID minus 1. More...
 
DeclContextInfosMap DeclContextInfos
 Information about the lexical and visible declarations for each DeclContext. More...
 
const serialization::DeclIDFileSortedDecls
 Array of file-level DeclIDs sorted by file. More...
 
unsigned NumFileSortedDecls
 
const
serialization::LocalRedeclarationsInfo
RedeclarationsMap
 Array of redeclaration chain location information within this module file, sorted by the first declaration ID. More...
 
unsigned LocalNumRedeclarationsInMap
 The number of redeclaration info entries in RedeclarationsMap. More...
 
SmallVector< uint64_t, 1 > RedeclarationChains
 The redeclaration chains for declarations local to this module file. More...
 
const
serialization::ObjCCategoriesInfo
ObjCCategoriesMap
 Array of category list location information within this module file, sorted by the definition ID. More...
 
unsigned LocalNumObjCCategoriesInMap
 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
 The number of types in this AST file. More...
 
const uint32_t * TypeOffsets
 Offset of each type within the bitstream, indexed by the type ID, or the representation of a Type*. More...
 
serialization::TypeID BaseTypeIndex
 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...
 

Detailed Description

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.

Definition at line 110 of file Serialization/Module.h.

Member Typedef Documentation

Definition at line 416 of file Serialization/Module.h.

Constructor & Destructor Documentation

ModuleFile::ModuleFile ( ModuleKind  Kind,
unsigned  Generation 
)

Definition at line 23 of file Serialization/Module.cpp.

ModuleFile::~ModuleFile ( )

Member Function Documentation

void ModuleFile::dump ( )
std::string clang::serialization::ModuleFile::getTimestampFilename ( ) const
inline
bool clang::serialization::ModuleFile::isDirectlyImported ( ) const
inline

Determine whether this module was directly imported at any point during translation.

Definition at line 477 of file Serialization/Module.h.

References DirectlyImported.

Member Data Documentation

std::string clang::serialization::ModuleFile::ActualOriginalSourceFileName

The actual original source file name that was used to build this AST file.

Definition at line 143 of file Serialization/Module.h.

serialization::DeclID clang::serialization::ModuleFile::BaseDeclID

Base declaration ID for declarations local to this module.

Definition at line 387 of file Serialization/Module.h.

Referenced by dump(), and clang::ASTReader::isDeclIDFromModule().

std::string clang::serialization::ModuleFile::BaseDirectory

The base directory of the module.

Definition at line 130 of file Serialization/Module.h.

Referenced by clang::ASTReader::ResolveImportedPath().

serialization::IdentID clang::serialization::ModuleFile::BaseIdentifierID

Base identifier ID for identifiers local to this module.

Definition at line 258 of file Serialization/Module.h.

Referenced by dump().

serialization::MacroID clang::serialization::ModuleFile::BaseMacroID

Base macro ID for macros local to this module.

Definition at line 290 of file Serialization/Module.h.

Referenced by dump().

serialization::PreprocessedEntityID clang::serialization::ModuleFile::BasePreprocessedEntityID

Base preprocessed entity ID for preprocessed entities local to this module.

Definition at line 309 of file Serialization/Module.h.

Referenced by dump().

serialization::SelectorID clang::serialization::ModuleFile::BaseSelectorID

Base selector ID for selectors local to this module.

Definition at line 355 of file Serialization/Module.h.

Referenced by dump().

serialization::SubmoduleID clang::serialization::ModuleFile::BaseSubmoduleID

Base submodule ID for submodules local to this module.

Definition at line 338 of file Serialization/Module.h.

Referenced by dump().

serialization::TypeID clang::serialization::ModuleFile::BaseTypeIndex

Base type ID for types local to this module as represented in the global type ID space.

Definition at line 459 of file Serialization/Module.h.

Referenced by dump().

std::unique_ptr<llvm::MemoryBuffer> clang::serialization::ModuleFile::Buffer

The memory buffer that stores the data associated with this AST file.

Definition at line 174 of file Serialization/Module.h.

Referenced by clang::serialization::ModuleManager::addModule().

const uint32_t* clang::serialization::ModuleFile::CXXBaseSpecifiersOffsets

Offset of each C++ base specifier set within the bitstream, indexed by the C++ base specifier set ID (-1).

Definition at line 406 of file Serialization/Module.h.

Referenced by clang::ASTReader::readCXXBaseSpecifiers().

const uint32_t* clang::serialization::ModuleFile::CXXCtorInitializersOffsets

Offset of each C++ ctor initializer list within the bitstream, indexed by the C++ ctor initializer list ID minus 1.

Definition at line 413 of file Serialization/Module.h.

Referenced by clang::ASTReader::ReadCXXCtorInitializersRef().

DeclContextInfosMap clang::serialization::ModuleFile::DeclContextInfos

Information about the lexical and visible declarations for each DeclContext.

Definition at line 420 of file Serialization/Module.h.

Referenced by ~ModuleFile().

const DeclOffset* clang::serialization::ModuleFile::DeclOffsets

Offset of each declaration within the bitstream, indexed by the declaration ID (-1).

Definition at line 384 of file Serialization/Module.h.

ContinuousRangeMap<uint32_t, int, 2> clang::serialization::ModuleFile::DeclRemap

Remapping table for declaration IDs in this module.

Definition at line 390 of file Serialization/Module.h.

Referenced by dump(), and clang::ASTReader::getGlobalDeclID().

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 377 of file Serialization/Module.h.

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.

Definition at line 197 of file Serialization/Module.h.

Referenced by clang::ASTReader::ReadAST().

bool clang::serialization::ModuleFile::DirectlyImported

Whether this module has been directly imported by the user.

Definition at line 167 of file Serialization/Module.h.

Referenced by clang::serialization::ModuleManager::addModule(), isDirectlyImported(), and markVisitedDepthFirst().

const FileEntry* clang::serialization::ModuleFile::File

The file entry for the module file.

Definition at line 159 of file Serialization/Module.h.

Referenced by clang::serialization::ModuleManager::addModule(), and clang::serialization::ModuleManager::moduleFileAccepted().

std::string clang::serialization::ModuleFile::FileName
const serialization::DeclID* clang::serialization::ModuleFile::FileSortedDecls

Array of file-level DeclIDs sorted by file.

Definition at line 423 of file Serialization/Module.h.

Referenced by clang::ASTReader::ReadSLocEntry().

SourceLocation clang::serialization::ModuleFile::FirstLoc

The first source location in this module.

Definition at line 203 of file Serialization/Module.h.

unsigned clang::serialization::ModuleFile::Generation

The generation of which this module file is a part.

Definition at line 170 of file Serialization/Module.h.

Referenced by clang::serialization::ReadMethodPoolVisitor::visit().

uint64_t clang::serialization::ModuleFile::GlobalBitOffset

The global bit offset (or base) of this module.

Definition at line 180 of file Serialization/Module.h.

Referenced by 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 399 of file Serialization/Module.h.

Referenced by clang::ASTReader::mapGlobalIDToModuleFileGlobalID().

void* clang::serialization::ModuleFile::HeaderFileInfoTable

The on-disk hash table that contains information about each of the header files.

Definition at line 331 of file Serialization/Module.h.

Referenced by ~ModuleFile().

const char* clang::serialization::ModuleFile::HeaderFileInfoTableData

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 327 of file Serialization/Module.h.

void* clang::serialization::ModuleFile::IdentifierLookupTable

A pointer to an on-disk hash table of opaque type IdentifierHashTable.

Definition at line 271 of file Serialization/Module.h.

Referenced by ~ModuleFile().

const uint32_t* clang::serialization::ModuleFile::IdentifierOffsets

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 255 of file Serialization/Module.h.

ContinuousRangeMap<uint32_t, int, 2> clang::serialization::ModuleFile::IdentifierRemap

Remapping table for identifier IDs in this module.

Definition at line 261 of file Serialization/Module.h.

Referenced by dump(), and clang::ASTReader::getGlobalIdentifierID().

const char* clang::serialization::ModuleFile::IdentifierTableData

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 267 of file Serialization/Module.h.

llvm::SetVector<ModuleFile *> clang::serialization::ModuleFile::ImportedBy

List of modules which depend on this module.

Definition at line 470 of file Serialization/Module.h.

Referenced by clang::serialization::ModuleManager::addModule().

SourceLocation clang::serialization::ModuleFile::ImportLoc

The source location where this module was first imported.

Definition at line 200 of file Serialization/Module.h.

Referenced by clang::serialization::ModuleManager::addModule(), clang::ASTReader::getModuleImportLoc(), and clang::ASTReader::ReadAST().

llvm::SetVector<ModuleFile *> clang::serialization::ModuleFile::Imports
unsigned clang::serialization::ModuleFile::Index

The index of this module in the list of modules.

Definition at line 118 of file Serialization/Module.h.

Referenced by clang::serialization::ModuleManager::addModule(), and clang::serialization::ModuleManager::visit().

const llvm::support::unaligned_uint64_t* clang::serialization::ModuleFile::InputFileOffsets

Offsets for all of the input file entries in the AST file.

Definition at line 210 of file Serialization/Module.h.

llvm::BitstreamCursor clang::serialization::ModuleFile::InputFilesCursor

The cursor to the start of the input-files block.

Definition at line 207 of file Serialization/Module.h.

std::vector<InputFile> clang::serialization::ModuleFile::InputFilesLoaded

The input files that have been loaded from this AST file.

Definition at line 213 of file Serialization/Module.h.

Referenced by clang::ASTReader::getInputFiles().

uint64_t clang::serialization::ModuleFile::InputFilesValidationTimestamp

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 219 of file Serialization/Module.h.

Referenced by clang::serialization::ModuleManager::addModule().

ModuleKind clang::serialization::ModuleFile::Kind
unsigned clang::serialization::ModuleFile::LocalNumCXXBaseSpecifiers

The number of C++ base specifier sets in this AST file.

Definition at line 402 of file Serialization/Module.h.

Referenced by clang::ASTReader::readCXXBaseSpecifiers().

unsigned clang::serialization::ModuleFile::LocalNumCXXCtorInitializers

The number of C++ ctor initializer lists in this AST file.

Definition at line 409 of file Serialization/Module.h.

Referenced by clang::ASTReader::ReadCXXCtorInitializersRef().

unsigned clang::serialization::ModuleFile::LocalNumDecls

The number of declarations in this AST file.

Definition at line 380 of file Serialization/Module.h.

Referenced by dump(), and clang::ASTReader::isDeclIDFromModule().

unsigned clang::serialization::ModuleFile::LocalNumHeaderFileInfos

The number of local HeaderFileInfo structures.

Definition at line 320 of file Serialization/Module.h.

unsigned clang::serialization::ModuleFile::LocalNumIdentifiers

The number of identifiers in this AST file.

Definition at line 248 of file Serialization/Module.h.

Referenced by dump().

unsigned clang::serialization::ModuleFile::LocalNumMacros

The number of macros in this AST file.

Definition at line 280 of file Serialization/Module.h.

Referenced by dump().

unsigned clang::serialization::ModuleFile::LocalNumObjCCategoriesInMap

The number of redeclaration info entries in ObjCCategoriesMap.

Definition at line 442 of file Serialization/Module.h.

unsigned clang::serialization::ModuleFile::LocalNumRedeclarationsInMap

The number of redeclaration info entries in RedeclarationsMap.

Definition at line 431 of file Serialization/Module.h.

unsigned clang::serialization::ModuleFile::LocalNumSelectors

The number of selectors new to this file.

This is the number of entries in SelectorOffsets.

Definition at line 348 of file Serialization/Module.h.

Referenced by dump().

unsigned clang::serialization::ModuleFile::LocalNumSLocEntries

The number of source location entries in this AST file.

Definition at line 227 of file Serialization/Module.h.

unsigned clang::serialization::ModuleFile::LocalNumSubmodules

The number of submodules in this module.

Definition at line 335 of file Serialization/Module.h.

Referenced by dump().

unsigned clang::serialization::ModuleFile::LocalNumTypes

The number of types in this AST file.

Definition at line 451 of file Serialization/Module.h.

Referenced by dump().

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 277 of file Serialization/Module.h.

Referenced by clang::ASTReader::ReadMacroRecord(), and clang::ASTReader::resolvePendingMacro().

const uint32_t* clang::serialization::ModuleFile::MacroOffsets

Offsets of macros in the preprocessor block.

This array is indexed by the macro ID (-1), and provides the offset into the preprocessor block where macro definitions are stored.

Definition at line 287 of file Serialization/Module.h.

ContinuousRangeMap<uint32_t, int, 2> clang::serialization::ModuleFile::MacroRemap

Remapping table for macro IDs in this module.

Definition at line 293 of file Serialization/Module.h.

Referenced by dump(), and clang::ASTReader::getGlobalMacroID().

uint64_t clang::serialization::ModuleFile::MacroStartOffset

The offset of the start of the set of defined macros.

Definition at line 296 of file Serialization/Module.h.

std::string clang::serialization::ModuleFile::ModuleMapPath

Definition at line 153 of file Serialization/Module.h.

std::string clang::serialization::ModuleFile::ModuleName
unsigned clang::serialization::ModuleFile::NumFileSortedDecls

Definition at line 424 of file Serialization/Module.h.

unsigned clang::serialization::ModuleFile::NumPreprocessedEntities

Definition at line 315 of file Serialization/Module.h.

Referenced by dump().

SmallVector<uint64_t, 1> clang::serialization::ModuleFile::ObjCCategories

The Objective-C category lists for categories known to this module.

Definition at line 446 of file Serialization/Module.h.

const serialization::ObjCCategoriesInfo* clang::serialization::ModuleFile::ObjCCategoriesMap

Array of category list location information within this module file, sorted by the definition ID.

Definition at line 439 of file Serialization/Module.h.

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 151 of file Serialization/Module.h.

Referenced by clang::ASTReader::getSourceDescriptor().

FileID clang::serialization::ModuleFile::OriginalSourceFileID

The file ID for the original source file that was used to build this AST file.

Definition at line 147 of file Serialization/Module.h.

Referenced by clang::ASTReader::ReadAST().

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 139 of file Serialization/Module.h.

Referenced by clang::ASTReader::getOriginalSourceFile(), and clang::ASTReader::getSourceDescriptor().

SmallVector<uint64_t, 8> clang::serialization::ModuleFile::PragmaDiagMappings

Diagnostic IDs and their mappings that the user changed.

Definition at line 467 of file Serialization/Module.h.

Referenced by clang::ASTReader::ReadPragmaDiagnosticMappings().

SmallVector<uint64_t, 4> clang::serialization::ModuleFile::PreloadSLocEntries

SLocEntries that we're going to preload.

Definition at line 240 of file Serialization/Module.h.

Referenced by clang::ASTReader::ReadAST().

const PPEntityOffset* clang::serialization::ModuleFile::PreprocessedEntityOffsets
ContinuousRangeMap<uint32_t, int, 2> clang::serialization::ModuleFile::PreprocessedEntityRemap

Remapping table for preprocessed entity IDs in this module.

Definition at line 312 of file Serialization/Module.h.

Referenced by dump(), and clang::ASTReader::getGlobalPreprocessedEntityID().

llvm::BitstreamCursor clang::serialization::ModuleFile::PreprocessorDetailCursor

The cursor to the start of the (optional) detailed preprocessing record block.

Definition at line 302 of file Serialization/Module.h.

Referenced by clang::ASTReader::ReadPreprocessedEntity().

uint64_t clang::serialization::ModuleFile::PreprocessorDetailStartOffset

The offset of the start of the preprocessor detail cursor.

Definition at line 305 of file Serialization/Module.h.

SmallVector<uint64_t, 1> clang::serialization::ModuleFile::RedeclarationChains

The redeclaration chains for declarations local to this module file.

Definition at line 435 of file Serialization/Module.h.

const serialization::LocalRedeclarationsInfo* clang::serialization::ModuleFile::RedeclarationsMap

Array of redeclaration chain location information within this module file, sorted by the first declaration ID.

Definition at line 428 of file Serialization/Module.h.

bool clang::serialization::ModuleFile::RelocatablePCH

Whether this precompiled header is a relocatable PCH file.

Definition at line 156 of file Serialization/Module.h.

void* clang::serialization::ModuleFile::SelectorLookupTable

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 370 of file Serialization/Module.h.

Referenced by clang::serialization::ReadMethodPoolVisitor::visit(), and ~ModuleFile().

const unsigned char* clang::serialization::ModuleFile::SelectorLookupTableData

A pointer to the character data that comprises the selector table.

The SelectorOffsets table refers into this memory.

Definition at line 363 of file Serialization/Module.h.

const uint32_t* clang::serialization::ModuleFile::SelectorOffsets

Offsets into the selector lookup table's data array where each selector resides.

Definition at line 352 of file Serialization/Module.h.

ContinuousRangeMap<uint32_t, int, 2> clang::serialization::ModuleFile::SelectorRemap

Remapping table for selector IDs in this module.

Definition at line 358 of file Serialization/Module.h.

Referenced by dump(), and clang::ASTReader::getGlobalSelectorID().

ASTFileSignature clang::serialization::ModuleFile::Signature

The signature of the module file, which may be used along with size and modification time to identify this particular file.

Definition at line 163 of file Serialization/Module.h.

Referenced by clang::serialization::ModuleManager::addModule(), and clang::ASTReader::getSourceDescriptor().

uint64_t clang::serialization::ModuleFile::SizeInBits

The size of this file, in bits.

Definition at line 177 of file Serialization/Module.h.

Referenced by clang::ASTReader::ReadAST().

int clang::serialization::ModuleFile::SLocEntryBaseID

The base ID in the source manager's view of this module.

Definition at line 230 of file Serialization/Module.h.

Referenced by clang::ASTReader::ReadAST(), and clang::ASTReader::ReadSLocEntry().

unsigned clang::serialization::ModuleFile::SLocEntryBaseOffset

The base offset in the source manager's view of this module.

Definition at line 233 of file Serialization/Module.h.

Referenced by dump(), and clang::ASTReader::ReadSLocEntry().

llvm::BitstreamCursor clang::serialization::ModuleFile::SLocEntryCursor

Cursor used to read source location entries.

Definition at line 224 of file Serialization/Module.h.

Referenced by clang::ASTReader::ReadSLocEntry().

const uint32_t* clang::serialization::ModuleFile::SLocEntryOffsets

Offsets for all of the source location entries in the AST file.

Definition at line 237 of file Serialization/Module.h.

Referenced by clang::ASTReader::ReadSLocEntry().

ContinuousRangeMap<uint32_t, int, 2> clang::serialization::ModuleFile::SLocRemap

Remapping table for source locations in this module.

Definition at line 243 of file Serialization/Module.h.

Referenced by clang::ASTReader::ReadSourceLocation().

llvm::BitstreamCursor clang::serialization::ModuleFile::Stream

The main bitstream cursor for the main block.

Definition at line 186 of file Serialization/Module.h.

llvm::BitstreamReader clang::serialization::ModuleFile::StreamFile

The bitstream reader from which we'll read the AST file.

Definition at line 183 of file Serialization/Module.h.

Referenced by clang::serialization::ModuleManager::addModule().

ContinuousRangeMap<uint32_t, int, 2> clang::serialization::ModuleFile::SubmoduleRemap

Remapping table for submodule IDs in this module.

Definition at line 341 of file Serialization/Module.h.

Referenced by dump(), and clang::ASTReader::getGlobalSubmoduleID().

const uint32_t* clang::serialization::ModuleFile::TypeOffsets

Offset of each type within the bitstream, indexed by the type ID, or the representation of a Type*.

Definition at line 455 of file Serialization/Module.h.

ContinuousRangeMap<uint32_t, int, 2> clang::serialization::ModuleFile::TypeRemap

Remapping table for type IDs in this module.

Definition at line 462 of file Serialization/Module.h.

Referenced by dump(), and clang::ASTReader::getGlobalTypeID().


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