LLVM: include/llvm/ExecutionEngine/Orc/MachOBuilder.h File Reference (original) (raw)

template <> \

struct MachOBuilderLoadCommandImplBaseMachO::Name \

: public MachO::LCStruct, public MachOBuilderLoadCommandBase { \

using CmdStruct = LCStruct; \

MachOBuilderLoadCommandImplBase() { \

memset(&rawStruct(), 0, sizeof(CmdStruct)); \

cmd = Value; \

cmdsize = sizeof(CmdStruct); \

} \

template <typename... ArgTs> \

MachOBuilderLoadCommandImplBase(ArgTs &&...Args) \

: CmdStruct{Value, sizeof(CmdStruct), std::forward(Args)...} {} \

CmdStruct &rawStruct() { return static_cast<CmdStruct &>(*this); } \

size_t size() const override { return cmdsize; } \

size_t write(MutableArrayRef Buf, size_t Offset, \

bool SwapStruct) override { \

} \

};

static void write(bool isBE, void *P, T V)

size_t writeMachOStruct(MutableArrayRef< char > Buf, size_t Offset, MachOStruct S, bool SwapStruct)

auto size(R &&Range, std::enable_if_t< std::is_base_of< std::random_access_iterator_tag, typename std::iterator_traits< decltype(Range.begin())>::iterator_category >::value, void > *=nullptr)

Get the size of a range.