LLVM
8.0.1
|
#include "llvm/DebugInfo/CodeView/AppendingTypeTableBuilder.h"
Public Member Functions | |
AppendingTypeTableBuilder (BumpPtrAllocator &Storage) | |
~AppendingTypeTableBuilder () | |
Optional< TypeIndex > | getFirst () override |
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 |
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) |
![]() | |
virtual | ~TypeCollection ()=default |
bool | empty () |
template<typename TFunc > | |
void | ForEachRecord (TFunc Func) |
Definition at line 30 of file AppendingTypeTableBuilder.h.
|
explicit |
Definition at line 35 of file AppendingTypeTableBuilder.cpp.
References ~AppendingTypeTableBuilder().
|
default |
Referenced by AppendingTypeTableBuilder().
|
overridevirtual |
Implements llvm::codeview::TypeCollection.
Definition at line 75 of file AppendingTypeTableBuilder.cpp.
Implements llvm::codeview::TypeCollection.
Definition at line 66 of file AppendingTypeTableBuilder.cpp.
References llvm::codeview::TypeIndex::isNoneType(), llvm::codeview::TypeIndex::isSimple(), and llvm::codeview::TypeIndex::toArrayIndex().
|
inline |
Definition at line 55 of file AppendingTypeTableBuilder.h.
References insertRecord(), insertRecordBytes(), and records().
Implements llvm::codeview::TypeCollection.
Definition at line 40 of file AppendingTypeTableBuilder.cpp.
References llvm::codeview::TypeCollection::empty(), llvm::codeview::TypeIndex::FirstNonSimpleIndex, and llvm::codeview::None.
Implements llvm::codeview::TypeCollection.
Definition at line 47 of file AppendingTypeTableBuilder.cpp.
References nextTypeIndex(), and llvm::codeview::None.
Implements llvm::codeview::TypeCollection.
Definition at line 53 of file AppendingTypeTableBuilder.cpp.
References llvm::ArrayRef< T >::data(), P, llvm::codeview::CVRecord< Kind >::RecordData, llvm::codeview::RecordPrefix::RecordKind, llvm::codeview::TypeIndex::toArrayIndex(), and llvm::codeview::CVRecord< Kind >::Type.
Implements llvm::codeview::TypeCollection.
Definition at line 62 of file AppendingTypeTableBuilder.cpp.
References llvm_unreachable.
TypeIndex AppendingTypeTableBuilder::insertRecord | ( | ContinuationRecordBuilder & | Builder | ) |
Definition at line 94 of file AppendingTypeTableBuilder.cpp.
References assert(), llvm::codeview::C, llvm::codeview::ContinuationRecordBuilder::end(), insertRecordBytes(), and nextTypeIndex().
Referenced by getAllocator().
Definition at line 84 of file AppendingTypeTableBuilder.cpp.
References llvm::BumpPtrAllocatorImpl< AllocatorT, SlabSize, SizeThreshold >::Allocate(), llvm::ArrayRef< T >::data(), llvm::Intrinsic::memcpy, nextTypeIndex(), and llvm::ArrayRef< T >::size().
Referenced by getAllocator(), insertRecord(), and writeLeafType().
TypeIndex AppendingTypeTableBuilder::nextTypeIndex | ( | ) | const |
Definition at line 31 of file AppendingTypeTableBuilder.cpp.
References llvm::codeview::TypeIndex::fromArrayIndex().
Referenced by getNext(), insertRecord(), and insertRecordBytes().
Definition at line 77 of file AppendingTypeTableBuilder.cpp.
Referenced by getAllocator(), and llvm::CodeViewYAML::detail::LeafRecordImpl< T >::toCodeViewRecord().
void AppendingTypeTableBuilder::reset | ( | ) |
Definition at line 81 of file AppendingTypeTableBuilder.cpp.
|
overridevirtual |
Implements llvm::codeview::TypeCollection.
Definition at line 73 of file AppendingTypeTableBuilder.cpp.
|
inline |
Definition at line 61 of file AppendingTypeTableBuilder.h.
References llvm::Data, insertRecordBytes(), and llvm::codeview::SimpleTypeSerializer::serialize().
Referenced by llvm::CodeViewYAML::detail::LeafRecordImpl< T >::toCodeViewRecord().