LLVM 22.0.0git
|
#include "llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h"
Public Member Functions | |
AppendingTypeTableBuilder (BumpPtrAllocator &Storage) | |
~AppendingTypeTableBuilder () | |
std::optional< TypeIndex > | getFirst () override |
std::optional< TypeIndex > | getNext (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 |
BumpPtrAllocator & | getAllocator () |
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) |
Definition at line 27 of file AppendingTypeTableBuilder.h.
|
explicit |
Definition at line 26 of file AppendingTypeTableBuilder.cpp.
|
default |
References capacity(), llvm::Data, getFirst(), getNext(), nextTypeIndex(), replaceType(), reset(), and size().
|
overridevirtual |
Implements llvm::codeview::TypeCollection.
Definition at line 61 of file AppendingTypeTableBuilder.cpp.
Referenced by ~AppendingTypeTableBuilder().
Implements llvm::codeview::TypeCollection.
Definition at line 52 of file AppendingTypeTableBuilder.cpp.
|
inline |
Definition at line 53 of file AppendingTypeTableBuilder.h.
|
overridevirtual |
Implements llvm::codeview::TypeCollection.
Definition at line 31 of file AppendingTypeTableBuilder.cpp.
References llvm::codeview::TypeCollection::empty(), and llvm::codeview::TypeIndex::FirstNonSimpleIndex.
Referenced by ~AppendingTypeTableBuilder().
Implements llvm::codeview::TypeCollection.
Definition at line 38 of file AppendingTypeTableBuilder.cpp.
References nextTypeIndex().
Referenced by ~AppendingTypeTableBuilder().
Implements llvm::codeview::TypeCollection.
Definition at line 44 of file AppendingTypeTableBuilder.cpp.
Implements llvm::codeview::TypeCollection.
Definition at line 48 of file AppendingTypeTableBuilder.cpp.
References llvm_unreachable.
TypeIndex AppendingTypeTableBuilder::insertRecord | ( | ContinuationRecordBuilder & | Builder | ) |
Definition at line 85 of file AppendingTypeTableBuilder.cpp.
References assert(), llvm::CallingConv::C, insertRecordBytes(), and nextTypeIndex().
Definition at line 77 of file AppendingTypeTableBuilder.cpp.
References nextTypeIndex(), and stabilize().
Referenced by insertRecord(), and writeLeafType().
TypeIndex AppendingTypeTableBuilder::nextTypeIndex | ( | ) | const |
Definition at line 22 of file AppendingTypeTableBuilder.cpp.
References llvm::codeview::TypeIndex::fromArrayIndex().
Referenced by getNext(), insertRecord(), insertRecordBytes(), and ~AppendingTypeTableBuilder().
Definition at line 63 of file AppendingTypeTableBuilder.cpp.
Referenced by llvm::CodeViewYAML::detail::LeafRecordImpl< T >::toCodeViewRecord(), and llvm::CodeViewYAML::toDebugT().
|
overridevirtual |
Implements llvm::codeview::TypeCollection.
Definition at line 94 of file AppendingTypeTableBuilder.cpp.
References assert(), llvm::Data, and stabilize().
Referenced by ~AppendingTypeTableBuilder().
void AppendingTypeTableBuilder::reset | ( | ) |
Definition at line 67 of file AppendingTypeTableBuilder.cpp.
Referenced by ~AppendingTypeTableBuilder().
|
overridevirtual |
Implements llvm::codeview::TypeCollection.
Definition at line 59 of file AppendingTypeTableBuilder.cpp.
Referenced by ~AppendingTypeTableBuilder().
|
inline |
Definition at line 59 of file AppendingTypeTableBuilder.h.
References llvm::Data, insertRecordBytes(), and T.
Referenced by llvm::CodeViewYAML::detail::LeafRecordImpl< T >::toCodeViewRecord().