|
| constexpr byte_order_enum | pabigot::byteorder::host_byte_order () |
| | Return the byte_order_enum value for the host. More...
|
| |
| template<class T , class U = typename std::make_unsigned<T>::type> |
| constexpr U | pabigot::byteorder::details::byteswap (T v) |
| | Return a byte-swapped representation of an integral value. More...
|
| |
| template<typename T > |
| constexpr std::enable_if< details::is_constexpr_swappable_v< T >, T >::type | pabigot::byteorder::byteswap (const T &t) |
| | Byte-swap values at compile-time. More...
|
| |
|
template<typename T > |
| std::enable_if< details::is_alias_swappable_v< T >, T >::type | pabigot::byteorder::byteswap (const T &t) |
| | Byte-swap values by aliasing a copy of the value to a uint8_t sequence.
|
| |
| template<typename T > |
| std::enable_if< details::is_other_swappable_v< T >, T >::type | pabigot::byteorder::byteswap (const T &t) |
| | Byte-swap values by creating a copy and using std::reverse. More...
|
| |
| template<typename T , byte_order_enum endian> |
| constexpr std::enable_if< details::is_constexpr_swappable_v< T > &&(host_byte_order()==endian), T >::type | pabigot::byteorder::hostswap (const T &t) |
| | constexpr-selected byte swap between host and endian. More...
|
| |
| template<typename T , byte_order_enum endian> |
| std::enable_if<!details::is_constexpr_swappable_v< T > &&(host_byte_order()==endian), T >::type | pabigot::byteorder::hostswap (const T &t) |
| | constexpr-selected byte swap between host and endian. More...
|
| |
| template<typename T , byte_order_enum endian> |
| constexpr std::enable_if< details::is_constexpr_swappable_v< T > &&(host_byte_order() !=endian), T >::type | pabigot::byteorder::hostswap (const T &t) |
| | constexpr-selected byte swap between host and endian. More...
|
| |
| template<typename T , byte_order_enum endian> |
| std::enable_if<!details::is_constexpr_swappable_v< T > &&(host_byte_order() !=endian), T >::type | pabigot::byteorder::hostswap (const T &t) |
| | constexpr-selected byte swap between host and endian. More...
|
| |
| template<typename T > |
| constexpr std::enable_if< details::is_constexpr_swappable_v< T >, T >::type | pabigot::byteorder::host_x_le (const T &v) |
| | Convert between host and little-endian byte order. More...
|
| |
|
template<typename T > |
| std::enable_if<!details::is_constexpr_swappable_v< T >, T >::type | pabigot::byteorder::host_x_le (const T &v) |
| | Convert between host and little-endian byte order.
|
| |
| template<typename T > |
| constexpr std::enable_if< details::is_constexpr_swappable_v< T >, T >::type | pabigot::byteorder::host_x_be (const T &v) |
| | Convert between host and big-endian byte order. More...
|
| |
|
template<typename T > |
| std::enable_if<!details::is_constexpr_swappable_v< T >, T >::type | pabigot::byteorder::host_x_be (const T &v) |
| | Convert between host and big-endian byte order.
|
| |
| template<typename T > |
| constexpr std::enable_if< details::is_constexpr_swappable_v< T >, T >::type | pabigot::byteorder::be_x_le (const T &v) |
| | Convert between big-endian and little-endian byte order. More...
|
| |
|
template<typename T > |
| std::enable_if<!details::is_constexpr_swappable_v< T >, T >::type | pabigot::byteorder::be_x_le (const T &v) |
| | Convert between big-endian and little-endian byte order.
|
| |
| template<typename T > |
| constexpr std::enable_if< details::is_constexpr_swappable_v< T >, T >::type | pabigot::byteorder::host_x_network (const T &v) |
| | Convert between host and network byte order. More...
|
| |
|
template<typename T > |
| std::enable_if<!details::is_constexpr_swappable_v< T >, T >::type | pabigot::byteorder::host_x_network (const T &v) |
| | Convert between host and network byte order.
|
| |
Support for byte order manipulation and packed storage.