LLVM  8.0.1
Public Member Functions | Friends | List of all members
llvm::pdb::TpiStream Class Reference

#include "llvm/DebugInfo/PDB/Native/TpiStream.h"

Public Member Functions

 TpiStream (PDBFile &File, std::unique_ptr< msf::MappedBlockStream > Stream)
 
 ~TpiStream ()
 
Error reload ()
 
PdbRaw_TpiVer getTpiVersion () const
 
uint32_t TypeIndexBegin () const
 
uint32_t TypeIndexEnd () const
 
uint32_t getNumTypeRecords () const
 
uint16_t getTypeHashStreamIndex () const
 
uint16_t getTypeHashStreamAuxIndex () const
 
uint32_t getHashKeySize () const
 
uint32_t getNumHashBuckets () const
 
FixedStreamArray< support::ulittle32_tgetHashValues () const
 
FixedStreamArray< codeview::TypeIndexOffsetgetTypeIndexOffsets () const
 
HashTable< support::ulittle32_t > & getHashAdjusters ()
 
codeview::CVTypeRange types (bool *HadError) const
 
const codeview::CVTypeArraytypeArray () const
 
codeview::LazyRandomTypeCollectiontypeCollection ()
 
Expected< codeview::TypeIndexfindFullDeclForForwardRef (codeview::TypeIndex ForwardRefTI) const
 
std::vector< codeview::TypeIndexfindRecordsByName (StringRef Name) const
 
codeview::CVType getType (codeview::TypeIndex Index)
 
BinarySubstreamRef getTypeRecordsSubstream () const
 
Error commit ()
 
void buildHashMap ()
 
bool supportsTypeLookup () const
 

Friends

class TpiStreamBuilder
 

Detailed Description

Definition at line 34 of file TpiStream.h.

Constructor & Destructor Documentation

◆ TpiStream()

TpiStream::TpiStream ( PDBFile File,
std::unique_ptr< msf::MappedBlockStream Stream 
)

Definition at line 37 of file TpiStream.cpp.

References ~TpiStream().

◆ ~TpiStream()

TpiStream::~TpiStream ( )
default

Referenced by TpiStream().

Member Function Documentation

◆ buildHashMap()

void TpiStream::buildHashMap ( )

◆ commit()

Error TpiStream::commit ( )

Definition at line 248 of file TpiStream.cpp.

References llvm::Error::success().

◆ findFullDeclForForwardRef()

Expected< TypeIndex > TpiStream::findFullDeclForForwardRef ( codeview::TypeIndex  ForwardRefTI) const

◆ findRecordsByName()

std::vector< TypeIndex > TpiStream::findRecordsByName ( StringRef  Name) const

◆ getHashAdjusters()

HashTable< support::ulittle32_t > & TpiStream::getHashAdjusters ( )

Definition at line 240 of file TpiStream.cpp.

◆ getHashKeySize()

uint32_t TpiStream::getHashKeySize ( ) const

Definition at line 144 of file TpiStream.cpp.

References llvm::pdb::TpiStreamHeader::HashKeySize.

◆ getHashValues()

FixedStreamArray< support::ulittle32_t > TpiStream::getHashValues ( ) const

Definition at line 232 of file TpiStream.cpp.

◆ getNumHashBuckets()

uint32_t TpiStream::getNumHashBuckets ( ) const

Definition at line 143 of file TpiStream.cpp.

References llvm::pdb::TpiStreamHeader::NumHashBuckets.

◆ getNumTypeRecords()

uint32_t TpiStream::getNumTypeRecords ( ) const

Definition at line 131 of file TpiStream.cpp.

References TypeIndexBegin(), and TypeIndexEnd().

Referenced by reload().

◆ getTpiVersion()

PdbRaw_TpiVer TpiStream::getTpiVersion ( ) const

Definition at line 122 of file TpiStream.cpp.

References llvm::pdb::TpiStreamHeader::Version.

◆ getType()

codeview::CVType TpiStream::getType ( codeview::TypeIndex  Index)

Definition at line 223 of file TpiStream.cpp.

References assert(), and llvm::codeview::TypeIndex::isSimple().

◆ getTypeHashStreamAuxIndex()

uint16_t TpiStream::getTypeHashStreamAuxIndex ( ) const

Definition at line 139 of file TpiStream.cpp.

References llvm::pdb::TpiStreamHeader::HashAuxStreamIndex.

◆ getTypeHashStreamIndex()

uint16_t TpiStream::getTypeHashStreamIndex ( ) const

Definition at line 135 of file TpiStream.cpp.

References llvm::pdb::TpiStreamHeader::HashStreamIndex.

◆ getTypeIndexOffsets()

FixedStreamArray< TypeIndexOffset > TpiStream::getTypeIndexOffsets ( ) const

Definition at line 236 of file TpiStream.cpp.

Referenced by reload().

◆ getTypeRecordsSubstream()

BinarySubstreamRef TpiStream::getTypeRecordsSubstream ( ) const

Definition at line 228 of file TpiStream.cpp.

◆ reload()

Error TpiStream::reload ( )

◆ supportsTypeLookup()

bool TpiStream::supportsTypeLookup ( ) const

Definition at line 179 of file TpiStream.cpp.

Referenced by findFullDeclForForwardRef(), and findRecordsByName().

◆ typeArray()

const codeview::CVTypeArray& llvm::pdb::TpiStream::typeArray ( ) const
inline

Definition at line 57 of file TpiStream.h.

◆ typeCollection()

codeview::LazyRandomTypeCollection& llvm::pdb::TpiStream::typeCollection ( )
inline

◆ TypeIndexBegin()

uint32_t TpiStream::TypeIndexBegin ( ) const

Definition at line 127 of file TpiStream.cpp.

References llvm::pdb::TpiStreamHeader::TypeIndexBegin.

Referenced by getNumTypeRecords().

◆ TypeIndexEnd()

uint32_t TpiStream::TypeIndexEnd ( ) const

Definition at line 129 of file TpiStream.cpp.

References llvm::pdb::TpiStreamHeader::TypeIndexEnd.

Referenced by getNumTypeRecords().

◆ types()

CVTypeRange TpiStream::types ( bool HadError) const

Friends And Related Function Documentation

◆ TpiStreamBuilder

friend class TpiStreamBuilder
friend

Definition at line 35 of file TpiStream.h.


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