LLVM 19.0.0git
Classes | Namespaces | Macros | Typedefs
MachOYAML.h File Reference

This file declares classes for handling the YAML representation of Mach-O. More...

#include "llvm/ADT/StringRef.h"
#include "llvm/BinaryFormat/MachO.h"
#include "llvm/ObjectYAML/DWARFYAML.h"
#include "llvm/ObjectYAML/YAML.h"
#include "llvm/Support/YAMLTraits.h"
#include <cstdint>
#include <optional>
#include <string>
#include <vector>
#include "llvm/BinaryFormat/MachO.def"

Go to the source code of this file.

Classes

struct  llvm::MachOYAML::Relocation
 
struct  llvm::MachOYAML::Section
 
struct  llvm::MachOYAML::FileHeader
 
struct  llvm::MachOYAML::LoadCommand
 
struct  llvm::MachOYAML::NListEntry
 
struct  llvm::MachOYAML::RebaseOpcode
 
struct  llvm::MachOYAML::BindOpcode
 
struct  llvm::MachOYAML::ExportEntry
 
struct  llvm::MachOYAML::DataInCodeEntry
 
struct  llvm::MachOYAML::LinkEditData
 
struct  llvm::MachOYAML::Object
 
struct  llvm::MachOYAML::FatHeader
 
struct  llvm::MachOYAML::FatArch
 
struct  llvm::MachOYAML::UniversalBinary
 
struct  llvm::yaml::MappingTraits< MachOYAML::FileHeader >
 
struct  llvm::yaml::MappingTraits< MachOYAML::Object >
 
struct  llvm::yaml::MappingTraits< MachOYAML::FatHeader >
 
struct  llvm::yaml::MappingTraits< MachOYAML::FatArch >
 
struct  llvm::yaml::MappingTraits< MachOYAML::UniversalBinary >
 
struct  llvm::yaml::MappingTraits< MachOYAML::LoadCommand >
 
struct  llvm::yaml::MappingTraits< MachOYAML::LinkEditData >
 
struct  llvm::yaml::MappingTraits< MachOYAML::RebaseOpcode >
 
struct  llvm::yaml::MappingTraits< MachOYAML::BindOpcode >
 
struct  llvm::yaml::MappingTraits< MachOYAML::ExportEntry >
 
struct  llvm::yaml::MappingTraits< MachOYAML::Relocation >
 
struct  llvm::yaml::MappingTraits< MachOYAML::Section >
 
struct  llvm::yaml::MappingTraits< MachOYAML::NListEntry >
 
struct  llvm::yaml::MappingTraits< MachO::build_tool_version >
 
struct  llvm::yaml::MappingTraits< MachOYAML::DataInCodeEntry >
 
struct  llvm::yaml::ScalarEnumerationTraits< MachO::LoadCommandType >
 
struct  llvm::yaml::ScalarEnumerationTraits< MachO::RebaseOpcode >
 
struct  llvm::yaml::ScalarEnumerationTraits< MachO::BindOpcode >
 
struct  llvm::yaml::ScalarTraits< char_16 >
 
struct  llvm::yaml::ScalarTraits< uuid_t >
 
struct  llvm::yaml::MappingTraits< MachO::dylib >
 
struct  llvm::yaml::MappingTraits< MachO::fvmlib >
 
struct  llvm::yaml::MappingTraits< MachO::section >
 
struct  llvm::yaml::MappingTraits< MachO::section_64 >
 

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
 
namespace  llvm::MachOYAML
 
namespace  llvm::yaml
 

Macros

#define HANDLE_LOAD_COMMAND(LCName, LCValue, LCStruct)    io.enumCase(value, #LCName, MachO::LCName);
 
#define ENUM_CASE(Enum)   io.enumCase(value, #Enum, MachO::Enum);
 
#define LOAD_COMMAND_STRUCT(LCStruct)
 

Typedefs

using llvm::yaml::char_16 = char[16]
 
using llvm::yaml::uuid_t = raw_ostream::uuid_t
 

Detailed Description

This file declares classes for handling the YAML representation of Mach-O.

Definition in file MachOYAML.h.

Macro Definition Documentation

◆ ENUM_CASE

#define ENUM_CASE (   Enum)    io.enumCase(value, #Enum, MachO::Enum);

Definition at line 261 of file MachOYAML.h.

◆ HANDLE_LOAD_COMMAND

#define HANDLE_LOAD_COMMAND (   LCName,
  LCValue,
  LCStruct 
)     io.enumCase(value, #LCName, MachO::LCName);

Definition at line 251 of file MachOYAML.h.

◆ LOAD_COMMAND_STRUCT

#define LOAD_COMMAND_STRUCT (   LCStruct)
Value:
template <> struct MappingTraits<MachO::LCStruct> { \
static void mapping(IO &IO, MachO::LCStruct &LoadCommand); \
};

Definition at line 318 of file MachOYAML.h.