|
1 // (C) Copyright John Maddock 2005. |
|
2 // Use, modification and distribution are subject to the |
|
3 // Boost Software License, Version 1.0. (See accompanying file |
|
4 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) |
|
5 |
|
6 #ifndef BOOST_TR1_TYPE_TRAITS_HPP_INCLUDED |
|
7 # define BOOST_TR1_TYPE_TRAITS_HPP_INCLUDED |
|
8 # include <boost/tr1/detail/config.hpp> |
|
9 |
|
10 #ifdef BOOST_HAS_TR1_TYPE_TRAITS |
|
11 |
|
12 # ifdef BOOST_HAS_INCLUDE_NEXT |
|
13 # include_next BOOST_TR1_HEADER(type_traits) |
|
14 # else |
|
15 # include <boost/tr1/detail/config_all.hpp> |
|
16 # include BOOST_TR1_STD_HEADER(BOOST_TR1_PATH(type_traits)) |
|
17 # endif |
|
18 |
|
19 #else |
|
20 // Boost Type Traits: |
|
21 #include <boost/type_traits.hpp> |
|
22 |
|
23 namespace std { namespace tr1{ |
|
24 |
|
25 using ::boost::integral_constant; |
|
26 using ::boost::true_type; |
|
27 using ::boost::false_type; |
|
28 using ::boost::is_void; |
|
29 using ::boost::is_integral; |
|
30 using ::boost::is_floating_point; |
|
31 using ::boost::is_array; |
|
32 using ::boost::is_pointer; |
|
33 using ::boost::is_reference; |
|
34 using ::boost::is_member_object_pointer; |
|
35 using ::boost::is_member_function_pointer; |
|
36 using ::boost::is_enum; |
|
37 using ::boost::is_union; |
|
38 using ::boost::is_class; |
|
39 using ::boost::is_function; |
|
40 using ::boost::is_arithmetic; |
|
41 using ::boost::is_fundamental; |
|
42 using ::boost::is_object; |
|
43 using ::boost::is_scalar; |
|
44 using ::boost::is_compound; |
|
45 using ::boost::is_member_pointer; |
|
46 using ::boost::is_const; |
|
47 using ::boost::is_volatile; |
|
48 using ::boost::is_pod; |
|
49 using ::boost::is_empty; |
|
50 using ::boost::is_polymorphic; |
|
51 using ::boost::is_abstract; |
|
52 using ::boost::has_trivial_constructor; |
|
53 using ::boost::has_trivial_copy; |
|
54 using ::boost::has_trivial_assign; |
|
55 using ::boost::has_trivial_destructor; |
|
56 using ::boost::has_nothrow_constructor; |
|
57 using ::boost::has_nothrow_copy; |
|
58 using ::boost::has_nothrow_assign; |
|
59 using ::boost::has_virtual_destructor; |
|
60 using ::boost::is_signed; |
|
61 using ::boost::is_unsigned; |
|
62 using ::boost::alignment_of; |
|
63 using ::boost::rank; |
|
64 using ::boost::extent; |
|
65 using ::boost::is_same; |
|
66 using ::boost::is_base_of; |
|
67 using ::boost::is_convertible; |
|
68 using ::boost::remove_const; |
|
69 using ::boost::remove_volatile; |
|
70 using ::boost::remove_cv; |
|
71 using ::boost::add_const; |
|
72 using ::boost::add_volatile; |
|
73 using ::boost::add_cv; |
|
74 using ::boost::remove_reference; |
|
75 using ::boost::add_reference; |
|
76 using ::boost::remove_extent; |
|
77 using ::boost::remove_all_extents; |
|
78 using ::boost::remove_pointer; |
|
79 using ::boost::add_pointer; |
|
80 using ::boost::aligned_storage; |
|
81 |
|
82 } } |
|
83 |
|
84 #endif |
|
85 |
|
86 #endif |