LLVM  6.0.0svn
Macros | Functions
CVTypeVisitor.cpp File Reference
#include "llvm/DebugInfo/CodeView/CVTypeVisitor.h"
#include "llvm/ADT/TinyPtrVector.h"
#include "llvm/DebugInfo/CodeView/CodeViewError.h"
#include "llvm/DebugInfo/CodeView/TypeCollection.h"
#include "llvm/DebugInfo/CodeView/TypeDeserializer.h"
#include "llvm/DebugInfo/CodeView/TypeRecordMapping.h"
#include "llvm/DebugInfo/CodeView/TypeVisitorCallbackPipeline.h"
#include "llvm/Support/BinaryByteStream.h"
#include "llvm/Support/BinaryStreamReader.h"
#include "llvm/DebugInfo/CodeView/CodeViewTypes.def"
Include dependency graph for CVTypeVisitor.cpp:

Go to the source code of this file.

Macros

#define MEMBER_RECORD(EnumName, EnumVal, Name)
 
#define MEMBER_RECORD_ALIAS(EnumName, EnumVal, Name, AliasName)   MEMBER_RECORD(EnumVal, EnumVal, AliasName)
 
#define TYPE_RECORD(EnumName, EnumVal, Name)
 
#define TYPE_RECORD_ALIAS(EnumName, EnumVal, Name, AliasName)
 
#define TYPE_RECORD(EnumName, EnumVal, Name)
 
#define TYPE_RECORD_ALIAS(EnumName, EnumVal, Name, AliasName)   TYPE_RECORD(EnumVal, EnumVal, AliasName)
 
#define MEMBER_RECORD(EnumName, EnumVal, Name)
 
#define MEMBER_RECORD_ALIAS(EnumName, EnumVal, Name, AliasName)
 

Functions

template<typename T >
static Error visitKnownRecord (CVType &Record, TypeVisitorCallbacks &Callbacks)
 
template<typename T >
static Error visitKnownMember (CVMemberRecord &Record, TypeVisitorCallbacks &Callbacks)
 
static Error visitMemberRecord (CVMemberRecord &Record, TypeVisitorCallbacks &Callbacks)
 

Macro Definition Documentation

◆ MEMBER_RECORD [1/2]

#define MEMBER_RECORD (   EnumName,
  EnumVal,
  Name 
)
Value:
case EnumName: { \
if (auto EC = visitKnownMember<Name##Record>(Record, Callbacks)) \
return EC; \
break; \
}
StringLiteral EnumName

◆ MEMBER_RECORD [2/2]

#define MEMBER_RECORD (   EnumName,
  EnumVal,
  Name 
)

◆ MEMBER_RECORD_ALIAS [1/2]

#define MEMBER_RECORD_ALIAS (   EnumName,
  EnumVal,
  Name,
  AliasName 
)    MEMBER_RECORD(EnumVal, EnumVal, AliasName)

◆ MEMBER_RECORD_ALIAS [2/2]

#define MEMBER_RECORD_ALIAS (   EnumName,
  EnumVal,
  Name,
  AliasName 
)

◆ TYPE_RECORD [1/2]

#define TYPE_RECORD (   EnumName,
  EnumVal,
  Name 
)

◆ TYPE_RECORD [2/2]

#define TYPE_RECORD (   EnumName,
  EnumVal,
  Name 
)
Value:
case EnumName: { \
if (auto EC = visitKnownRecord<Name##Record>(Record, Callbacks)) \
return EC; \
break; \
}
StringLiteral EnumName

◆ TYPE_RECORD_ALIAS [1/2]

#define TYPE_RECORD_ALIAS (   EnumName,
  EnumVal,
  Name,
  AliasName 
)

◆ TYPE_RECORD_ALIAS [2/2]

#define TYPE_RECORD_ALIAS (   EnumName,
  EnumVal,
  Name,
  AliasName 
)    TYPE_RECORD(EnumVal, EnumVal, AliasName)

Function Documentation

◆ visitKnownMember()

template<typename T >
static Error visitKnownMember ( CVMemberRecord Record,
TypeVisitorCallbacks Callbacks 
)
static

◆ visitKnownRecord()

template<typename T >
static Error visitKnownRecord ( CVType Record,
TypeVisitorCallbacks Callbacks 
)
static

◆ visitMemberRecord()

static Error visitMemberRecord ( CVMemberRecord Record,
TypeVisitorCallbacks Callbacks 
)
static