//===- ArchiveYAML.h - Archive YAMLIO implementation ------------*- C++ -*-===// // // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. // See https://llvm.org/LICENSE.txt for license information. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // //===----------------------------------------------------------------------===// /// /// \file /// This file declares classes for handling the YAML representation of archives. /// //===----------------------------------------------------------------------===// #ifndef LLVM_OBJECTYAML_ARCHIVEYAML_H #define LLVM_OBJECTYAML_ARCHIVEYAML_H #include "llvm/Support/YAMLTraits.h" #include "llvm/ObjectYAML/YAML.h" #include "llvm/ADT/MapVector.h" #include <optional> namespace llvm { namespace ArchYAML { struct Archive { … }; } // end namespace ArchYAML } // end namespace llvm LLVM_YAML_IS_SEQUENCE_VECTOR(llvm::ArchYAML::Archive::Child) namespace llvm { namespace yaml { template <> struct MappingTraits<ArchYAML::Archive> { … }; template <> struct MappingTraits<ArchYAML::Archive::Child> { … }; } // end namespace yaml } // end namespace llvm #endif // LLVM_OBJECTYAML_ARCHIVEYAML_H