LLVM 20.0.0git
Macros | Functions
CVTypeVisitor.cpp File Reference
#include "llvm/DebugInfo/CodeView/CVTypeVisitor.h"
#include "llvm/DebugInfo/CodeView/TypeCollection.h"
#include "llvm/DebugInfo/CodeView/TypeDeserializer.h"
#include "llvm/DebugInfo/CodeView/TypeIndex.h"
#include "llvm/DebugInfo/CodeView/TypeRecord.h"
#include "llvm/DebugInfo/CodeView/TypeVisitorCallbackPipeline.h"
#include "llvm/DebugInfo/CodeView/TypeVisitorCallbacks.h"
#include "llvm/Support/BinaryByteStream.h"
#include "llvm/Support/BinaryStreamReader.h"
#include "llvm/DebugInfo/CodeView/CodeViewTypes.def"

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; \
}

◆ 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

Definition at line 34 of file CVTypeVisitor.cpp.

References llvm::codeview::EC, and llvm::Error::success().

◆ visitKnownRecord()

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

Definition at line 25 of file CVTypeVisitor.cpp.

References llvm::codeview::EC, and llvm::Error::success().

◆ visitMemberRecord()

static Error visitMemberRecord ( CVMemberRecord Record,
TypeVisitorCallbacks Callbacks 
)
static