LLVM  4.0.0
Public Member Functions | List of all members
llvm::codeview::TypeRecordMapping Class Reference

#include <TypeRecordMapping.h>

Inheritance diagram for llvm::codeview::TypeRecordMapping:
[legend]
Collaboration diagram for llvm::codeview::TypeRecordMapping:
[legend]

Public Member Functions

 TypeRecordMapping (msf::StreamReader &Reader)
 
 TypeRecordMapping (msf::StreamWriter &Writer)
 
Error visitTypeBegin (CVType &Record) override
 Paired begin/end actions for all types. More...
 
Error visitTypeEnd (CVType &Record) override
 
Error visitMemberBegin (CVMemberRecord &Record) override
 
Error visitMemberEnd (CVMemberRecord &Record) override
 
 MEMBER_RECORD_ALIAS (LF_IVBCLASS, 0x1402, IndirectVirtualBaseClass, VirtualBaseClass) CV_TYPE(LF_NULLLEAF
 
- 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. More...
 
virtual Error visitUnknownMember (CVMemberRecord &Record)
 
 MEMBER_RECORD_ALIAS (LF_IVBCLASS, 0x1402, IndirectVirtualBaseClass, VirtualBaseClass) CV_TYPE(LF_NULLLEAF
 

Detailed Description

Definition at line 24 of file TypeRecordMapping.h.

Constructor & Destructor Documentation

llvm::codeview::TypeRecordMapping::TypeRecordMapping ( msf::StreamReader Reader)
inlineexplicit

Definition at line 26 of file TypeRecordMapping.h.

llvm::codeview::TypeRecordMapping::TypeRecordMapping ( msf::StreamWriter Writer)
inlineexplicit

Definition at line 27 of file TypeRecordMapping.h.

Member Function Documentation

llvm::codeview::TypeRecordMapping::MEMBER_RECORD_ALIAS ( LF_IVBCLASS  ,
0x1402  ,
IndirectVirtualBaseClass  ,
VirtualBaseClass   
)
Error TypeRecordMapping::visitMemberBegin ( CVMemberRecord Record)
overridevirtual
Error TypeRecordMapping::visitMemberEnd ( CVMemberRecord Record)
overridevirtual
Error TypeRecordMapping::visitTypeBegin ( CVType Record)
overridevirtual

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.

Reimplemented from llvm::codeview::TypeVisitorCallbacks.

Definition at line 87 of file TypeRecordMapping.cpp.

References assert(), llvm::codeview::CodeViewRecordIO::beginRecord(), error, llvm::Optional< T >::hasValue(), llvm::codeview::MaxRecordLength, llvm::Error::success(), and llvm::codeview::CVRecord< Kind >::Type.

Referenced by llvm::codeview::TypeSerializer::visitTypeBegin().

Error TypeRecordMapping::visitTypeEnd ( CVType Record)
overridevirtual

The documentation for this class was generated from the following files: