LLVM  11.0.0git
Public Member Functions | List of all members
llvm::codeview::AppendingTypeTableBuilder Class Reference

#include "llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h"

Inheritance diagram for llvm::codeview::AppendingTypeTableBuilder:
Inheritance graph
Collaboration diagram for llvm::codeview::AppendingTypeTableBuilder:
Collaboration graph

Public Member Functions

 AppendingTypeTableBuilder (BumpPtrAllocator &Storage)
 ~AppendingTypeTableBuilder ()
Optional< TypeIndexgetFirst () override
Optional< TypeIndexgetNext (TypeIndex Prev) override
CVType getType (TypeIndex Index) override
StringRef getTypeName (TypeIndex Index) override
bool contains (TypeIndex Index) override
uint32_t size () override
uint32_t capacity () override
bool replaceType (TypeIndex &Index, CVType Data, bool Stabilize) override
void reset ()
TypeIndex nextTypeIndex () const
BumpPtrAllocatorgetAllocator ()
ArrayRef< ArrayRef< uint8_t > > records () const
TypeIndex insertRecordBytes (ArrayRef< uint8_t > &Record)
TypeIndex insertRecord (ContinuationRecordBuilder &Builder)
template<typename T >
TypeIndex writeLeafType (T &Record)
- Public Member Functions inherited from llvm::codeview::TypeCollection
virtual ~TypeCollection ()=default
bool empty ()
template<typename TFunc >
void ForEachRecord (TFunc Func)

Detailed Description

Definition at line 29 of file AppendingTypeTableBuilder.h.

Constructor & Destructor Documentation

◆ AppendingTypeTableBuilder()

AppendingTypeTableBuilder::AppendingTypeTableBuilder ( BumpPtrAllocator Storage)

Definition at line 34 of file AppendingTypeTableBuilder.cpp.

References ~AppendingTypeTableBuilder().

◆ ~AppendingTypeTableBuilder()

AppendingTypeTableBuilder::~AppendingTypeTableBuilder ( )

Member Function Documentation

◆ capacity()

uint32_t AppendingTypeTableBuilder::capacity ( )

Implements llvm::codeview::TypeCollection.

Definition at line 69 of file AppendingTypeTableBuilder.cpp.

◆ contains()

bool AppendingTypeTableBuilder::contains ( TypeIndex  Index)

◆ getAllocator()

BumpPtrAllocator& llvm::codeview::AppendingTypeTableBuilder::getAllocator ( )

Definition at line 55 of file AppendingTypeTableBuilder.h.

References insertRecord(), insertRecordBytes(), and records().

◆ getFirst()

Optional< TypeIndex > AppendingTypeTableBuilder::getFirst ( )

◆ getNext()

Optional< TypeIndex > AppendingTypeTableBuilder::getNext ( TypeIndex  Prev)

◆ getType()

CVType AppendingTypeTableBuilder::getType ( TypeIndex  Index)

◆ getTypeName()

StringRef AppendingTypeTableBuilder::getTypeName ( TypeIndex  Index)

Implements llvm::codeview::TypeCollection.

Definition at line 56 of file AppendingTypeTableBuilder.cpp.

References llvm_unreachable.

◆ insertRecord()

TypeIndex AppendingTypeTableBuilder::insertRecord ( ContinuationRecordBuilder Builder)

◆ insertRecordBytes()

TypeIndex AppendingTypeTableBuilder::insertRecordBytes ( ArrayRef< uint8_t > &  Record)

Definition at line 85 of file AppendingTypeTableBuilder.cpp.

References nextTypeIndex(), and stabilize().

Referenced by getAllocator(), insertRecord(), and writeLeafType().

◆ nextTypeIndex()

TypeIndex AppendingTypeTableBuilder::nextTypeIndex ( ) const

◆ records()

ArrayRef< ArrayRef< uint8_t > > AppendingTypeTableBuilder::records ( ) const

◆ replaceType()

bool AppendingTypeTableBuilder::replaceType ( TypeIndex Index,
CVType  Data,
bool  Stabilize 

◆ reset()

void AppendingTypeTableBuilder::reset ( )

Definition at line 75 of file AppendingTypeTableBuilder.cpp.

◆ size()

uint32_t AppendingTypeTableBuilder::size ( )

Implements llvm::codeview::TypeCollection.

Definition at line 67 of file AppendingTypeTableBuilder.cpp.

◆ writeLeafType()

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

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