]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/llvm/tools/llvm-pdbdump/YamlSerializationContext.h
Merge ^/head r314270 through r314419.
[FreeBSD/FreeBSD.git] / contrib / llvm / tools / llvm-pdbdump / YamlSerializationContext.h
1 //===- YamlSerializationContext.h ----------------------------- *- C++ --*-===//
2 //
3 //                     The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9
10 #ifndef LLVM_TOOLS_LLVMPDBDUMP_YAMLSERIALIZATIONCONTEXT_H
11 #define LLVM_TOOLS_LLVMPDBDUMP_YAMLSERIALIZATIONCONTEXT_H
12
13 #include "PdbYaml.h"
14 #include "YamlTypeDumper.h"
15 #include "llvm/Support/Allocator.h"
16
17 namespace llvm {
18 namespace codeview {
19 class TypeSerializer;
20 }
21 namespace yaml {
22 class IO;
23 }
24
25 namespace pdb {
26 namespace yaml {
27 struct SerializationContext {
28   explicit SerializationContext(llvm::yaml::IO &IO, BumpPtrAllocator &Allocator)
29       : Dumper(IO, *this), Allocator(Allocator) {}
30
31   codeview::yaml::YamlTypeDumperCallbacks Dumper;
32   BumpPtrAllocator &Allocator;
33   codeview::TypeSerializer *ActiveSerializer = nullptr;
34 };
35 }
36 }
37 }
38
39 #endif