// Copyright (C) 2003, Fernando Luis Cacciola Carballal. // // Distributed under the Boost Software License, Version 1.0. (See // accompanying file LICENSE_1_0.txt or copy at // http://www.boost.org/LICENSE_1_0.txt) // // // NOTE: This file is intended to be used ONLY by the test files // from the Numeric Conversions Library // // // The following 'to_string' helpers are provided to give readable names // to the various enums used by the library. // NOTE: specializations of boost::lexical_cast<> were not used since some compilers had // trouble dealing with such specializations for different enumerations. // std::string to_string ( boost::numeric::int_float_mixture_enum arg ) { switch ( arg ) { case boost::numeric::integral_to_integral : return "integral_to_integral" ; case boost::numeric::integral_to_float : return "integral_to_float" ; case boost::numeric::float_to_integral : return "float_to_integral" ; case boost::numeric::float_to_float : return "float_to_float" ; } return "(Unknown result!)" ; } std::string to_string ( boost::numeric::sign_mixture_enum arg ) { switch ( arg ) { case boost::numeric::unsigned_to_unsigned : return "unsigned_to_unsigned" ; case boost::numeric::signed_to_signed : return "signed_to_signed" ; case boost::numeric::signed_to_unsigned : return "signed_to_unsigned" ; case boost::numeric::unsigned_to_signed : return "unsigned_to_signed" ; } return "(Unknown result!)" ; } std::string to_string ( boost::numeric::udt_builtin_mixture_enum arg ) { switch ( arg ) { case boost::numeric::builtin_to_builtin : return "builtin_to_builtin" ; case boost::numeric::builtin_to_udt : return "builtin_to_udt" ; case boost::numeric::udt_to_builtin : return "udt_to_builtin" ; case boost::numeric::udt_to_udt : return "udt_to_udt" ; } return "(Unknown result!)" ; } // ///////////////////////////////////////////////////////////////////////////////////////////////