LLVM 20.0.0git
|
#include "llvm/DebugInfo/CodeView/TypeDeserializer.h"
Public Member Functions | |
TypeDeserializer ()=default | |
Error | visitTypeBegin (CVType &Record) override |
Paired begin/end actions for all types. | |
Error | visitTypeBegin (CVType &Record, TypeIndex Index) override |
Error | visitTypeEnd (CVType &Record) override |
Public Member Functions inherited from llvm::codeview::TypeVisitorCallbacks | |
virtual | ~TypeVisitorCallbacks ()=default |
virtual Error | visitUnknownType (CVType &Record) |
Action to take on unknown types. By default, they are ignored. | |
virtual Error | visitTypeBegin (CVType &Record) |
Paired begin/end actions for all types. | |
virtual Error | visitTypeBegin (CVType &Record, TypeIndex Index) |
virtual Error | visitTypeEnd (CVType &Record) |
virtual Error | visitUnknownMember (CVMemberRecord &Record) |
virtual Error | visitMemberBegin (CVMemberRecord &Record) |
virtual Error | visitMemberEnd (CVMemberRecord &Record) |
Static Public Member Functions | |
template<typename T > | |
static Error | deserializeAs (CVType &CVT, T &Record) |
template<typename T > | |
static Expected< T > | deserializeAs (ArrayRef< uint8_t > Data) |
Definition at line 28 of file TypeDeserializer.h.
|
default |
|
inlinestatic |
Definition at line 55 of file TypeDeserializer.h.
References llvm::Data, and llvm::codeview::EC.
|
inlinestatic |
Definition at line 42 of file TypeDeserializer.h.
References llvm::codeview::CVRecord< Kind >::content(), llvm::codeview::EC, I, llvm::codeview::CVRecord< Kind >::kind(), and llvm::Error::success().
Referenced by getHashForUdt(), llvm::logicalview::getRecordName(), getSourceLineHash(), getTagRecordHashForUdt(), llvm::logicalview::LVLogicalVisitor::processLines(), and llvm::logicalview::LVLogicalVisitor::visitKnownRecord().
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 67 of file TypeDeserializer.h.
References assert().
Referenced by visitTypeBegin().
|
inlineoverridevirtual |
Reimplemented from llvm::codeview::TypeVisitorCallbacks.
Definition at line 73 of file TypeDeserializer.h.
References visitTypeBegin().
Reimplemented from llvm::codeview::TypeVisitorCallbacks.
Definition at line 77 of file TypeDeserializer.h.
References assert(), and llvm::codeview::EC.