class TpiStreamBuilder
Declaration
class TpiStreamBuilder { /* full declaration omitted */ };
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:40
Member Variables
- private msf::MSFBuilder& Msf
- private llvm::BumpPtrAllocator& Allocator
- private uint32_t TypeRecordCount = 0
- private size_t TypeRecordBytes = 0
- private llvm::pdb::PdbRaw_TpiVer VerHeader = PdbRaw_TpiVer::PdbTpiV80
- private std::vector<ArrayRef<uint8_t>> TypeRecBuffers
- private std::vector<uint32_t> TypeHashes
- private std::vector<codeview::TypeIndexOffset> TypeIndexOffsets
- private uint32_t HashStreamIndex = kInvalidStreamIndex
- private std::unique_ptr<BinaryByteStream> HashValueStream
- private const llvm::pdb::TpiStreamHeader* Header
- private uint32_t Idx
Method Overview
- public TpiStreamBuilder(msf::MSFBuilder & Msf, uint32_t StreamIdx)
- public TpiStreamBuilder(const llvm::pdb::TpiStreamBuilder &)
- public void addTypeRecord(ArrayRef<uint8_t> Type, Optional<uint32_t> Hash)
- public void addTypeRecords(ArrayRef<uint8_t> Types, ArrayRef<uint16_t> Sizes, ArrayRef<uint32_t> Hashes)
- private uint32_t calculateHashBufferSize() const
- private uint32_t calculateIndexOffsetSize() const
- public uint32_t calculateSerializedLength()
- public llvm::Error commit(const msf::MSFLayout & Layout, llvm::WritableBinaryStreamRef Buffer)
- private llvm::Error finalize()
- public llvm::Error finalizeMsfLayout()
- public uint32_t getRecordCount() const
- public void setVersionHeader(llvm::pdb::PdbRaw_TpiVer Version)
- private void updateTypeIndexOffsets(ArrayRef<uint16_t> Sizes)
- public ~TpiStreamBuilder()
Methods
¶TpiStreamBuilder(msf::MSFBuilder& Msf,
uint32_t StreamIdx)
TpiStreamBuilder(msf::MSFBuilder& Msf,
uint32_t StreamIdx)
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:42
Parameters
- msf::MSFBuilder& Msf
- uint32_t StreamIdx
¶TpiStreamBuilder(
const llvm::pdb::TpiStreamBuilder&)
TpiStreamBuilder(
const llvm::pdb::TpiStreamBuilder&)
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:45
Parameters
- const llvm::pdb::TpiStreamBuilder&
¶void addTypeRecord(ArrayRef<uint8_t> Type,
Optional<uint32_t> Hash)
void addTypeRecord(ArrayRef<uint8_t> Type,
Optional<uint32_t> Hash)
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:49
Parameters
¶void addTypeRecords(ArrayRef<uint8_t> Types,
ArrayRef<uint16_t> Sizes,
ArrayRef<uint32_t> Hashes)
void addTypeRecords(ArrayRef<uint8_t> Types,
ArrayRef<uint16_t> Sizes,
ArrayRef<uint32_t> Hashes)
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:50
Parameters
¶uint32_t calculateHashBufferSize() const
uint32_t calculateHashBufferSize() const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:64
¶uint32_t calculateIndexOffsetSize() const
uint32_t calculateIndexOffsetSize() const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:65
¶uint32_t calculateSerializedLength()
uint32_t calculateSerializedLength()
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:59
¶llvm::Error commit(
const msf::MSFLayout& Layout,
llvm::WritableBinaryStreamRef Buffer)
llvm::Error commit(
const msf::MSFLayout& Layout,
llvm::WritableBinaryStreamRef Buffer)
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:57
Parameters
- const msf::MSFLayout& Layout
- llvm::WritableBinaryStreamRef Buffer
¶llvm::Error finalize()
llvm::Error finalize()
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:66
¶llvm::Error finalizeMsfLayout()
llvm::Error finalizeMsfLayout()
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:53
¶uint32_t getRecordCount() const
uint32_t getRecordCount() const
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:55
¶void setVersionHeader(
llvm::pdb::PdbRaw_TpiVer Version)
void setVersionHeader(
llvm::pdb::PdbRaw_TpiVer Version)
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:48
Parameters
- llvm::pdb::PdbRaw_TpiVer Version
¶void updateTypeIndexOffsets(
ArrayRef<uint16_t> Sizes)
void updateTypeIndexOffsets(
ArrayRef<uint16_t> Sizes)
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:62
Parameters
- ArrayRef<uint16_t> Sizes
¶~TpiStreamBuilder()
~TpiStreamBuilder()
Declared at: llvm/include/llvm/DebugInfo/PDB/Native/TpiStreamBuilder.h:43