summaryrefslogtreecommitdiffstats
path: root/src/boost/libs/numeric/conversion/test/test_helpers2.cpp
blob: 8fca50b63c2dd78eb87b09ffe1e6c5f3ebade7c4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
// 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!)" ;
}

//
///////////////////////////////////////////////////////////////////////////////////////////////