LLVM  9.0.0svn
ObjectYAML.h
Go to the documentation of this file.
1 //===- ObjectYAML.h ---------------------------------------------*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 
9 #ifndef LLVM_OBJECTYAML_OBJECTYAML_H
10 #define LLVM_OBJECTYAML_OBJECTYAML_H
11 
18 #include <memory>
19 
20 namespace llvm {
21 namespace yaml {
22 
23 class IO;
24 
26  std::unique_ptr<ELFYAML::Object> Elf;
27  std::unique_ptr<COFFYAML::Object> Coff;
28  std::unique_ptr<MachOYAML::Object> MachO;
29  std::unique_ptr<MachOYAML::UniversalBinary> FatMachO;
30  std::unique_ptr<MinidumpYAML::Object> Minidump;
31  std::unique_ptr<WasmYAML::Object> Wasm;
32 };
33 
34 template <> struct MappingTraits<YamlObjectFile> {
35  static void mapping(IO &IO, YamlObjectFile &ObjectFile);
36 };
37 
38 } // end namespace yaml
39 } // end namespace llvm
40 
41 #endif // LLVM_OBJECTYAML_OBJECTYAML_H
This file declares classes for handling the YAML representation of ELF.
This class represents lattice values for constants.
Definition: AllocatorList.h:23
std::unique_ptr< COFFYAML::Object > Coff
Definition: ObjectYAML.h:27
This file declares classes for handling the YAML representation of wasm binaries. ...
std::unique_ptr< MinidumpYAML::Object > Minidump
Definition: ObjectYAML.h:30
std::unique_ptr< MachOYAML::Object > MachO
Definition: ObjectYAML.h:28
This file declares classes for handling the YAML representation of Mach-O.
std::unique_ptr< MachOYAML::UniversalBinary > FatMachO
Definition: ObjectYAML.h:29
std::unique_ptr< WasmYAML::Object > Wasm
Definition: ObjectYAML.h:31
std::unique_ptr< ELFYAML::Object > Elf
Definition: ObjectYAML.h:26