class TypeDeserializer
Declaration
class TypeDeserializer : public TypeVisitorCallbacks { /* full declaration omitted */ };
Declared at: llvm/include/llvm/DebugInfo/CodeView/TypeDeserializer.h:28
Inherits from: TypeVisitorCallbacks
Method Overview
- public TypeDeserializer()
- public template <typename T>static llvm::Error deserializeAs(llvm::codeview::CVType & CVT, T & Record)
- public template <typename T>static Expected<T> deserializeAs(ArrayRef<uint8_t> Data)
- public llvm::Error visitTypeBegin(llvm::codeview::CVType & Record)
- public llvm::Error visitTypeBegin(llvm::codeview::CVType & Record, llvm::codeview::TypeIndex Index)
- public llvm::Error visitTypeEnd(llvm::codeview::CVType & Record)
Inherited from TypeVisitorCallbacks:
- public visitMemberBegin
- public visitMemberEnd
- public visitTypeBegin
- public visitTypeBegin
- public visitTypeEnd
- public visitUnknownMember
- public visitUnknownType
Methods
¶TypeDeserializer()
TypeDeserializer()
Declared at: llvm/include/llvm/DebugInfo/CodeView/TypeDeserializer.h:40
¶template <typename T>
static llvm::Error deserializeAs(
llvm::codeview::CVType& CVT,
T& Record)
template <typename T>
static llvm::Error deserializeAs(
llvm::codeview::CVType& CVT,
T& Record)
Declared at: llvm/include/llvm/DebugInfo/CodeView/TypeDeserializer.h:42
Templates
- T
Parameters
- llvm::codeview::CVType& CVT
- T& Record
¶template <typename T>
static Expected<T> deserializeAs(
ArrayRef<uint8_t> Data)
template <typename T>
static Expected<T> deserializeAs(
ArrayRef<uint8_t> Data)
Declared at: llvm/include/llvm/DebugInfo/CodeView/TypeDeserializer.h:55
Templates
- T
Parameters
- ArrayRef<uint8_t> Data
¶llvm::Error visitTypeBegin(
llvm::codeview::CVType& Record)
llvm::Error visitTypeBegin(
llvm::codeview::CVType& Record)
Description
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).
Declared at: llvm/include/llvm/DebugInfo/CodeView/TypeDeserializer.h:67
Parameters
- llvm::codeview::CVType& Record
¶llvm::Error visitTypeBegin(
llvm::codeview::CVType& Record,
llvm::codeview::TypeIndex Index)
llvm::Error visitTypeBegin(
llvm::codeview::CVType& Record,
llvm::codeview::TypeIndex Index)
Declared at: llvm/include/llvm/DebugInfo/CodeView/TypeDeserializer.h:73
Parameters
- llvm::codeview::CVType& Record
- llvm::codeview::TypeIndex Index
¶llvm::Error visitTypeEnd(
llvm::codeview::CVType& Record)
llvm::Error visitTypeEnd(
llvm::codeview::CVType& Record)
Declared at: llvm/include/llvm/DebugInfo/CodeView/TypeDeserializer.h:77
Parameters
- llvm::codeview::CVType& Record