LLVM
17.0.0git
|
#include "llvm/DebugInfo/CodeView/TypeRecordMapping.h"
Public Member Functions | |
TypeRecordMapping (BinaryStreamReader &Reader) | |
TypeRecordMapping (BinaryStreamWriter &Writer) | |
TypeRecordMapping (CodeViewRecordStreamer &Streamer) | |
Error | visitTypeBegin (CVType &Record) override |
Paired begin/end actions for all types. More... | |
Error | visitTypeBegin (CVType &Record, TypeIndex Index) override |
Error | visitTypeEnd (CVType &Record) override |
Error | visitMemberBegin (CVMemberRecord &Record) override |
Error | visitMemberEnd (CVMemberRecord &Record) override |
virtual Error | visitTypeBegin (CVType &Record) |
Paired begin/end actions for all types. More... | |
virtual Error | visitTypeBegin (CVType &Record, TypeIndex Index) |
![]() | |
virtual | ~TypeVisitorCallbacks ()=default |
virtual Error | visitUnknownType (CVType &Record) |
Action to take on unknown types. By default, they are ignored. More... | |
virtual Error | visitUnknownMember (CVMemberRecord &Record) |
Definition at line 26 of file TypeRecordMapping.h.
|
inlineexplicit |
Definition at line 28 of file TypeRecordMapping.h.
|
inlineexplicit |
Definition at line 29 of file TypeRecordMapping.h.
|
inlineexplicit |
Definition at line 30 of file TypeRecordMapping.h.
|
overridevirtual |
Reimplemented from llvm::codeview::TypeVisitorCallbacks.
Definition at line 274 of file TypeRecordMapping.cpp.
References assert(), llvm::codeview::CodeViewRecordIO::beginRecord(), ContinuationLength, error, getLeafTypeName(), llvm::codeview::CodeViewRecordIO::isStreaming(), LeafTypeNames, llvm::codeview::CodeViewRecordIO::mapEnum(), llvm::codeview::MaxRecordLength, and llvm::Error::success().
Referenced by llvm::codeview::ContinuationRecordBuilder::writeMemberType().
|
overridevirtual |
Reimplemented from llvm::codeview::TypeVisitorCallbacks.
Definition at line 300 of file TypeRecordMapping.cpp.
References assert(), llvm::codeview::EC, llvm::codeview::CodeViewRecordIO::endRecord(), error, llvm::codeview::CodeViewRecordIO::isReading(), llvm::codeview::CodeViewRecordIO::skipPadding(), and llvm::Error::success().
Referenced by llvm::codeview::ContinuationRecordBuilder::writeMemberType().
|
inline |
Paired begin/end actions for all types.
Receives all record data, including the fixed-length record prefix. visitTypeBegin() should return the type of the Record, or an error if it cannot be determined. Exactly one of the two visitTypeBegin methods will be called, depending on whether records are being visited sequentially or randomly. An implementation should be prepared to handle both (or assert if it can't handle random access visitation).
Definition at line 31 of file TypeVisitorCallbacks.h.
Paired begin/end actions for all types.
Receives all record data, including the fixed-length record prefix. visitTypeBegin() should return the type of the Record, or an error if it cannot be determined. Exactly one of the two visitTypeBegin methods will be called, depending on whether records are being visited sequentially or randomly. An implementation should be prepared to handle both (or assert if it can't handle random access visitation).
Reimplemented from llvm::codeview::TypeVisitorCallbacks.
Definition at line 232 of file TypeRecordMapping.cpp.
References llvm::ArrayRef(), assert(), llvm::codeview::CodeViewRecordIO::beginRecord(), error, llvm::codeview::CodeViewRecordIO::isStreaming(), llvm::codeview::CVRecord< Kind >::kind(), LeafTypeNames, llvm::codeview::CVRecord< Kind >::length(), llvm::codeview::CodeViewRecordIO::mapEnum(), llvm::codeview::CodeViewRecordIO::mapInteger(), llvm::codeview::MaxRecordLength, and llvm::Error::success().
Referenced by llvm::codeview::ContinuationRecordBuilder::begin(), llvm::codeview::SimpleTypeSerializer::serialize(), and visitTypeBegin().
|
inline |
Definition at line 32 of file TypeVisitorCallbacks.h.
Reimplemented from llvm::codeview::TypeVisitorCallbacks.
Definition at line 257 of file TypeRecordMapping.cpp.
References llvm::codeview::CodeViewRecordIO::emitRawComment(), getLeafTypeName(), llvm::codeview::CodeViewRecordIO::isStreaming(), llvm::codeview::CVRecord< Kind >::kind(), and visitTypeBegin().
Reimplemented from llvm::codeview::TypeVisitorCallbacks.
Definition at line 264 of file TypeRecordMapping.cpp.
References assert(), llvm::codeview::CodeViewRecordIO::endRecord(), error, and llvm::Error::success().
Referenced by llvm::codeview::ContinuationRecordBuilder::end(), and llvm::codeview::SimpleTypeSerializer::serialize().