class AppendingTypeTableBuilder

Declaration

class AppendingTypeTableBuilder : public TypeCollection { /* full declaration omitted */ };

Declared at: llvm/include/llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h:26

Inherits from: TypeCollection

Member Variables

private llvm::BumpPtrAllocator& RecordStorage
private llvm::codeview::SimpleTypeSerializer SimpleSerializer
private SmallVector<ArrayRef<uint8_t>, 2> SeenRecords
Contains a list of all records indexed by TypeIndex.toArrayIndex().

Method Overview

  • public AppendingTypeTableBuilder(llvm::BumpPtrAllocator & Storage)
  • public uint32_t capacity()
  • public bool contains(llvm::codeview::TypeIndex Index)
  • public llvm::BumpPtrAllocator & getAllocator()
  • public Optional<llvm::codeview::TypeIndex> getFirst()
  • public Optional<llvm::codeview::TypeIndex> getNext(llvm::codeview::TypeIndex Prev)
  • public llvm::codeview::CVType getType(llvm::codeview::TypeIndex Index)
  • public llvm::StringRef getTypeName(llvm::codeview::TypeIndex Index)
  • public llvm::codeview::TypeIndex insertRecord(llvm::codeview::ContinuationRecordBuilder & Builder)
  • public llvm::codeview::TypeIndex insertRecordBytes(ArrayRef<uint8_t> & Record)
  • public llvm::codeview::TypeIndex nextTypeIndex() const
  • public ArrayRef<ArrayRef<uint8_t>> records() const
  • public bool replaceType(llvm::codeview::TypeIndex & Index, llvm::codeview::CVType Data, bool Stabilize)
  • public void reset()
  • public uint32_t size()
  • public template <typename T>llvm::codeview::TypeIndex writeLeafType(T & Record)
  • public ~AppendingTypeTableBuilder()

Inherited from TypeCollection:

Methods

AppendingTypeTableBuilder(
    llvm::BumpPtrAllocator& Storage)

Declared at: llvm/include/llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h:35

Parameters

llvm::BumpPtrAllocator& Storage

uint32_t capacity()

Declared at: llvm/include/llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h:45

bool contains(llvm::codeview::TypeIndex Index)

Declared at: llvm/include/llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h:43

Parameters

llvm::codeview::TypeIndex Index

llvm::BumpPtrAllocator& getAllocator()

Declared at: llvm/include/llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h:52

Optional<llvm::codeview::TypeIndex> getFirst()

Declared at: llvm/include/llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h:39

Optional<llvm::codeview::TypeIndex> getNext(
    llvm::codeview::TypeIndex Prev)

Declared at: llvm/include/llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h:40

Parameters

llvm::codeview::TypeIndex Prev

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

Declared at: llvm/include/llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h:41

Parameters

llvm::codeview::TypeIndex Index

llvm::StringRef getTypeName(
    llvm::codeview::TypeIndex Index)

Declared at: llvm/include/llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h:42

Parameters

llvm::codeview::TypeIndex Index

llvm::codeview::TypeIndex insertRecord(
    llvm::codeview::ContinuationRecordBuilder&
        Builder)

Declared at: llvm/include/llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h:56

Parameters

llvm::codeview::ContinuationRecordBuilder& Builder

llvm::codeview::TypeIndex insertRecordBytes(
    ArrayRef<uint8_t>& Record)

Declared at: llvm/include/llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h:55

Parameters

ArrayRef<uint8_t>& Record

llvm::codeview::TypeIndex nextTypeIndex() const

Declared at: llvm/include/llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h:50

ArrayRef<ArrayRef<uint8_t>> records() const

Declared at: llvm/include/llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h:54

bool replaceType(llvm::codeview::TypeIndex& Index,
                 llvm::codeview::CVType Data,
                 bool Stabilize)

Declared at: llvm/include/llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h:46

Parameters

llvm::codeview::TypeIndex& Index
llvm::codeview::CVType Data
bool Stabilize

void reset()

Declared at: llvm/include/llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h:49

uint32_t size()

Declared at: llvm/include/llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h:44

template <typename T>
llvm::codeview::TypeIndex writeLeafType(T& Record)

Declared at: llvm/include/llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h:58

Templates

T

Parameters

T& Record

~AppendingTypeTableBuilder()

Declared at: llvm/include/llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h:36