...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Convert sequence of integral types into a sequence of hexadecimal characters and back. Based on the MySQL functions HEX and UNHEX.
Marshall Clow
namespace boost { namespace algorithm { struct hex_decode_error; struct non_hex_input; struct not_enough_input; typedef boost::error_info< struct bad_char_, char > bad_char; template<typename InputIterator, typename OutputIterator> unspecified hex(InputIterator, InputIterator, OutputIterator); template<typename InputIterator, typename OutputIterator> unspecified hex_lower(InputIterator, InputIterator, OutputIterator); template<typename T, typename OutputIterator> boost::enable_if< boost::is_integral< T >, OutputIterator >::type hex(const T *, OutputIterator); template<typename T, typename OutputIterator> boost::enable_if< boost::is_integral< T >, OutputIterator >::type hex_lower(const T *, OutputIterator); template<typename Range, typename OutputIterator> unspecified hex(const Range &, OutputIterator); template<typename Range, typename OutputIterator> unspecified hex_lower(const Range &, OutputIterator); template<typename InputIterator, typename OutputIterator> OutputIterator unhex(InputIterator, InputIterator, OutputIterator); template<typename T, typename OutputIterator> OutputIterator unhex(const T *, OutputIterator); template<typename Range, typename OutputIterator> OutputIterator unhex(const Range &, OutputIterator); template<typename String> String hex(const String &); template<typename String> String hex_lower(const String &); template<typename String> String unhex(const String &); } }