Lines Matching defs:endian
1 //===- Endian.h - Utilities for IO with endian specific data ----*- C++ -*-===//
10 // This file declares generic functions to read and write endian specific data.
36 namespace endian {
38 template<typename value_type, endianness endian>
40 if (endian != native && sys::IsBigEndianHost != (endian == big))
47 endianness endian,
56 return byte_swap<value_type, endian>(ret);
61 template<typename value_type, endianness endian, std::size_t alignment,
64 value_type ret = read<value_type, endian, alignment>(memory);
71 endianness endian,
74 value = byte_swap<value_type, endian>(value);
86 template <typename value_type, endianness endian, std::size_t alignment>
90 return read<value_type, endian, alignment>(memory);
98 val[0] = byte_swap<value_type, endian>(val[0]);
99 val[1] = byte_swap<value_type, endian>(val[1]);
120 template <typename value_type, endianness endian, std::size_t alignment>
125 write<value_type, endian, alignment>(memory, value);
133 val[0] = byte_swap<value_type, endian>(val[0]);
134 val[1] = byte_swap<value_type, endian>(val[1]);
162 val[0] = byte_swap<value_type, endian>(val[0]);
163 val[1] = byte_swap<value_type, endian>(val[1]);
169 } // end namespace endian
173 endianness endian,
181 return endian::read<value_type, endian, alignment>(
186 endian::write<value_type, endian, alignment>(
219 return endian::read<value_type, endian, alignment>(Ptr);
223 endian::write<value_type, endian, alignment>(Ptr, NewValue);
303 namespace endian {
345 } // end namespace endian