aboutsummaryrefslogtreecommitdiff
path: root/contrib/llvm/tools/llvm-pdbdump/YamlTypeDumper.h
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/llvm/tools/llvm-pdbdump/YamlTypeDumper.h')
-rw-r--r--contrib/llvm/tools/llvm-pdbdump/YamlTypeDumper.h116
1 files changed, 0 insertions, 116 deletions
diff --git a/contrib/llvm/tools/llvm-pdbdump/YamlTypeDumper.h b/contrib/llvm/tools/llvm-pdbdump/YamlTypeDumper.h
deleted file mode 100644
index 3f15ba0bf85d..000000000000
--- a/contrib/llvm/tools/llvm-pdbdump/YamlTypeDumper.h
+++ /dev/null
@@ -1,116 +0,0 @@
-//===- YamlTypeDumper.h --------------------------------------- *- C++ --*-===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef LLVM_TOOLS_LLVMPDBDUMP_YAMLTYPEDUMPER_H
-#define LLVM_TOOLS_LLVMPDBDUMP_YAMLTYPEDUMPER_H
-
-#include "llvm/DebugInfo/CodeView/CodeView.h"
-#include "llvm/DebugInfo/CodeView/TypeVisitorCallbacks.h"
-#include "llvm/Support/YAMLTraits.h"
-
-namespace llvm {
-namespace pdb {
-namespace yaml {
-struct SerializationContext;
-}
-}
-namespace codeview {
-namespace yaml {
-class YamlTypeDumperCallbacks : public TypeVisitorCallbacks {
-public:
- YamlTypeDumperCallbacks(llvm::yaml::IO &IO,
- llvm::pdb::yaml::SerializationContext &Context)
- : YamlIO(IO), Context(Context) {}
-
- virtual Error visitTypeBegin(CVType &Record) override;
- virtual Error visitMemberBegin(CVMemberRecord &Record) override;
-
-#define TYPE_RECORD(EnumName, EnumVal, Name) \
- Error visitKnownRecord(CVRecord<TypeLeafKind> &CVR, Name##Record &Record) \
- override { \
- visitKnownRecordImpl(#Name, CVR, Record); \
- return Error::success(); \
- }
-#define MEMBER_RECORD(EnumName, EnumVal, Name) \
- Error visitKnownMember(CVMemberRecord &CVR, Name##Record &Record) override { \
- visitKnownMemberImpl(#Name, Record); \
- return Error::success(); \
- }
-#define TYPE_RECORD_ALIAS(EnumName, EnumVal, Name, AliasName)
-#define MEMBER_RECORD_ALIAS(EnumName, EnumVal, Name, AliasName)
-#include "llvm/DebugInfo/CodeView/TypeRecords.def"
-
-private:
- template <typename T> void visitKnownMemberImpl(const char *Name, T &Record) {
- YamlIO.mapRequired(Name, Record);
- }
-
- template <typename T>
- void visitKnownRecordImpl(const char *Name, CVType &Type, T &Record) {
- YamlIO.mapRequired(Name, Record);
- }
-
- void visitKnownRecordImpl(const char *Name, CVType &CVR,
- FieldListRecord &FieldList);
-
- llvm::yaml::IO &YamlIO;
- llvm::pdb::yaml::SerializationContext &Context;
-};
-}
-}
-namespace pdb {
-namespace yaml {
-struct SerializationContext;
-}
-}
-}
-
-namespace llvm {
-namespace yaml {
-
-template <> struct ScalarTraits<APSInt> {
- static void output(const APSInt &S, void *, llvm::raw_ostream &OS);
- static StringRef input(StringRef Scalar, void *Ctx, APSInt &S);
- static bool mustQuote(StringRef Scalar);
-};
-
-template <> struct ScalarTraits<codeview::TypeIndex> {
- static void output(const codeview::TypeIndex &S, void *,
- llvm::raw_ostream &OS);
- static StringRef input(StringRef Scalar, void *Ctx, codeview::TypeIndex &S);
- static bool mustQuote(StringRef Scalar);
-};
-
-template <> struct MappingTraits<codeview::MemberPointerInfo> {
- static void mapping(IO &IO, codeview::MemberPointerInfo &Obj);
-};
-
-template <>
-struct MappingContextTraits<codeview::CVType, pdb::yaml::SerializationContext> {
- static void mapping(IO &IO, codeview::CVType &Obj,
- pdb::yaml::SerializationContext &Context);
-};
-
-template <> struct ScalarEnumerationTraits<codeview::TypeLeafKind> {
- static void enumeration(IO &io, codeview::TypeLeafKind &Value);
-};
-
-#define TYPE_RECORD(EnumName, EnumVal, Name) \
- template <> struct MappingTraits<codeview::Name##Record> { \
- static void mapping(IO &IO, codeview::Name##Record &Obj); \
- };
-#define MEMBER_RECORD(EnumName, EnumVal, Name) \
- TYPE_RECORD(EnumName, EnumVal, Name)
-#define TYPE_RECORD_ALIAS(EnumName, EnumVal, Name, AliasName)
-#define MEMBER_RECORD_ALIAS(EnumName, EnumVal, Name, AliasName)
-#include "llvm/DebugInfo/CodeView/TypeRecords.def"
-}
-}
-
-#endif