1 //===- lld/ReaderWriter/YamlContext.h - object used in YAML I/O context ---===//
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 #ifndef LLD_READER_WRITER_YAML_CONTEXT_H
11 #define LLD_READER_WRITER_YAML_CONTEXT_H
13 #include "lld/Common/LLVM.h"
23 namespace normalized {
24 struct NormalizedFile;
28 using lld::mach_o::normalized::NormalizedFile;
30 /// When YAML I/O is used in lld, the yaml context always holds a YamlContext
31 /// object. We need to support hetergenous yaml documents which each require
32 /// different context info. This struct supports all clients.
34 const LinkingContext *_ctx = nullptr;
35 const Registry *_registry = nullptr;
36 File *_file = nullptr;
37 NormalizedFile *_normalizeMachOFile = nullptr;
41 } // end namespace lld
43 #endif // LLD_READER_WRITER_YAML_CONTEXT_H