#ifndef LLVM_SUPPORT_SWAPBYTEORDER_H
#define LLVM_SUPPORT_SWAPBYTEORDER_H
#include "llvm/ADT/STLForwardCompat.h"
#include "llvm/ADT/bit.h"
#include <cstdint>
#include <type_traits>
namespace llvm {
namespace sys {
constexpr bool IsBigEndianHost = …;
static const bool IsLittleEndianHost = …;
inline unsigned char getSwappedBytes(unsigned char C) { … }
inline signed char getSwappedBytes( signed char C) { … }
inline char getSwappedBytes( char C) { … }
inline unsigned short getSwappedBytes(unsigned short C) { … }
inline signed short getSwappedBytes( signed short C) { … }
inline unsigned int getSwappedBytes(unsigned int C) { … }
inline signed int getSwappedBytes( signed int C) { … }
inline unsigned long getSwappedBytes(unsigned long C) { … }
inline signed long getSwappedBytes( signed long C) { … }
inline unsigned long long getSwappedBytes(unsigned long long C) { … }
inline signed long long getSwappedBytes( signed long long C) { … }
inline float getSwappedBytes(float C) { … }
inline double getSwappedBytes(double C) { … }
template <typename T>
inline std::enable_if_t<std::is_enum_v<T>, T> getSwappedBytes(T C) { … }
template<typename T>
inline void swapByteOrder(T &Value) { … }
}
}
#endif