Endian changes since formal review
- Headers rename to endian/types.hpp and endian/conversion.hpp.
Infrastructure file names changed accordingly.
- The conversion.hpp conversion functions have been much revised, refactored,
renamed and otherwise improved based on review comments.
- UDT's are supported.
float(32-bits) and double (64-bits) are
supported.
- Both return-by-value and modify-in-place interfaces are provided.
- Synonyms for the BSD byte swapping function names popularized by OS X
and Linux are provided, so that that developers already used to these name
can continue to use them if they wish.
- In addition to the fixed endianness functions, functions that perform
compile-time (via template) and run-time (via function argument) dispatch
are now provided.
- Compiler (Clang, GCC, VisualC++, etc.) intrinsics and built-in functions
are used in the implementation where appropriate.
- For the aligned endian integer types, the implementation uses
conversion.hpp conversion functions.
- C++11 features such as
noexcept are used, while still
supporting C++03 compilers.
- Acknowledgements have been updated.
- Headers have been reorganized to make them easier to read, as requested,
with a synopsis at the front and implementation following.