Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r67791 - in sandbox/type_traits/boost/type_traits: . detail
From: frederic.bron_at_[hidden]
Date: 2011-01-08 12:43:48


Author: bronf
Date: 2011-01-08 12:43:40 EST (Sat, 08 Jan 2011)
New Revision: 67791
URL: http://svn.boost.org/trac/boost/changeset/67791

Log:
improved specialization of operators working only with integer types (replaced exhaustive list by additional bool template parameter)
Added:
   sandbox/type_traits/boost/type_traits/detail/has_integer_binary_operator.hpp (contents, props changed)
Text files modified:
   sandbox/type_traits/boost/type_traits/detail/has_binary_operator.hpp | 2
   sandbox/type_traits/boost/type_traits/detail/has_postfix_unary_operator.hpp | 2
   sandbox/type_traits/boost/type_traits/detail/has_prefix_unary_operator.hpp | 2
   sandbox/type_traits/boost/type_traits/has_operator_bit_and.hpp | 82 ---------------------------------------
   sandbox/type_traits/boost/type_traits/has_operator_bit_and_equal.hpp | 82 ---------------------------------------
   sandbox/type_traits/boost/type_traits/has_operator_bit_or.hpp | 82 ---------------------------------------
   sandbox/type_traits/boost/type_traits/has_operator_bit_or_equal.hpp | 82 ---------------------------------------
   sandbox/type_traits/boost/type_traits/has_operator_bit_xor.hpp | 82 ---------------------------------------
   sandbox/type_traits/boost/type_traits/has_operator_bit_xor_equal.hpp | 82 ---------------------------------------
   sandbox/type_traits/boost/type_traits/has_operator_left_shift.hpp | 82 ---------------------------------------
   sandbox/type_traits/boost/type_traits/has_operator_left_shift_equal.hpp | 82 ---------------------------------------
   sandbox/type_traits/boost/type_traits/has_operator_modulus.hpp | 82 ---------------------------------------
   sandbox/type_traits/boost/type_traits/has_operator_modulus_equal.hpp | 82 ---------------------------------------
   sandbox/type_traits/boost/type_traits/has_operator_right_shift.hpp | 82 ---------------------------------------
   sandbox/type_traits/boost/type_traits/has_operator_right_shift_equal.hpp | 82 ---------------------------------------
   15 files changed, 12 insertions(+), 978 deletions(-)

Modified: sandbox/type_traits/boost/type_traits/detail/has_binary_operator.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/detail/has_binary_operator.hpp (original)
+++ sandbox/type_traits/boost/type_traits/detail/has_binary_operator.hpp 2011-01-08 12:43:40 EST (Sat, 08 Jan 2011)
@@ -10,8 +10,6 @@
 #include <boost/type_traits/remove_cv.hpp>
 #include <boost/type_traits/integral_constant.hpp>
 #include <boost/type_traits/detail/yes_no_type.hpp>
-#include <boost/type_traits/is_void.hpp>
-#include <boost/typeof/typeof.hpp>
 
 // should be the last #include
 #include <boost/type_traits/detail/bool_trait_def.hpp>

Added: sandbox/type_traits/boost/type_traits/detail/has_integer_binary_operator.hpp
==============================================================================
--- (empty file)
+++ sandbox/type_traits/boost/type_traits/detail/has_integer_binary_operator.hpp 2011-01-08 12:43:40 EST (Sat, 08 Jan 2011)
@@ -0,0 +1,158 @@
+// Copyright 2010 Robert Stewart, Steven Watanabe, Roman Perepelitsa & Frédéric Bron
+//
+// Use, modification and distribution are subject to 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).
+//
+// See http://www.boost.org/libs/type_traits for most recent version including documentation.
+
+#include <limits>
+#include <boost/config.hpp>
+#include <boost/type_traits/remove_cv.hpp>
+#include <boost/type_traits/remove_reference.hpp>
+#include <boost/type_traits/integral_constant.hpp>
+#include <boost/type_traits/is_class.hpp>
+#include <boost/type_traits/is_union.hpp>
+#include <boost/type_traits/is_pointer.hpp>
+#include <boost/type_traits/detail/yes_no_type.hpp>
+
+// should be the last #include
+#include <boost/type_traits/detail/bool_trait_def.hpp>
+
+namespace boost {
+namespace detail {
+
+// This namespace ensures that ADL does not mess things up.
+namespace BOOST_JOIN(BOOST_TT_TRAIT_NAME,_impl) {
+
+// a type returned from comparison operator when no such operator is found in the
+// type's own namespace
+struct tag { };
+
+// any soaks up implicit conversions and makes the following
+// comparison operators less-preferred than any other such operators that
+// might be found via ADL.
+struct any { template <class T> any(T const&); };
+
+// when operator BOOST_TT_TRAIT_OP is not available, this one is used
+tag operator BOOST_TT_TRAIT_OP (const any&, const any&);
+
+namespace {
+ template <typename T>
+ typename ::boost::remove_cv<T>::type &make();
+}
+
+template < typename LHS, typename RHS >
+struct BOOST_JOIN(BOOST_TT_TRAIT_NAME,_returns_void) {
+ struct returns_void_t {
+ template <typename T> friend int operator,(T const &, returns_void_t);
+ };
+ static ::boost::type_traits::yes_type returns_void(returns_void_t);
+ static ::boost::type_traits::no_type returns_void(int);
+ static bool const value=
+ sizeof(::boost::type_traits::yes_type)==sizeof(returns_void((make<LHS>() BOOST_TT_TRAIT_OP make<RHS>(),returns_void_t())));
+};
+
+template < typename LHS, typename RHS, typename RET, typename RETURNS_VOID >
+struct BOOST_JOIN(BOOST_TT_TRAIT_NAME,_impl1);
+
+// LHS BOOST_TT_TRAIT_OP RHS does not return void, checks if it is convertible to RET
+template < typename LHS, typename RHS, typename RET >
+struct BOOST_JOIN(BOOST_TT_TRAIT_NAME,_impl1)< LHS, RHS, RET, ::boost::false_type > {
+ static ::boost::type_traits::yes_type is_convertible_to_RET(RET); // this version is preferred for types convertible to RET
+ static ::boost::type_traits::no_type is_convertible_to_RET(...); // this version is used otherwise
+
+ static const bool value=
+ sizeof(is_convertible_to_RET(make<LHS>() BOOST_TT_TRAIT_OP make<RHS>()))==sizeof(::boost::type_traits::yes_type);
+};
+
+// LHS BOOST_TT_TRAIT_OP RHS returns void!=RET
+template < typename LHS, typename RHS, typename RET >
+struct BOOST_JOIN(BOOST_TT_TRAIT_NAME,_impl1)< LHS, RHS, RET, ::boost::true_type > {
+ static const bool value=false;
+};
+
+template < typename LHS, typename RHS, typename RET,
+ bool two_builtin_one_non_integer =
+ // two builtin
+ not (
+ boost::is_class < typename boost::remove_reference<LHS>::type >::value or
+ boost::is_union < typename boost::remove_reference<LHS>::type >::value or
+ boost::is_pointer< typename boost::remove_reference<LHS>::type >::value or
+ boost::is_class < typename boost::remove_reference<RHS>::type >::value or
+ boost::is_union < typename boost::remove_reference<RHS>::type >::value or
+ boost::is_pointer< typename boost::remove_reference<RHS>::type >::value
+ )
+ and
+ (
+ // one non integer
+ not std::numeric_limits< typename boost::remove_reference<LHS>::type >::is_integer
+ or
+ not std::numeric_limits< typename boost::remove_reference<RHS>::type >::is_integer
+ )
+>
+struct BOOST_JOIN(BOOST_TT_TRAIT_NAME,_impl);
+
+template < typename LHS, typename RHS, typename RET >
+struct BOOST_JOIN(BOOST_TT_TRAIT_NAME,_impl) < LHS, RHS, RET, true > {
+ static const bool value=false;
+};
+
+// checks for return type if 3rd template parameter RET is non void
+template < typename LHS, typename RHS, typename RET >
+struct BOOST_JOIN(BOOST_TT_TRAIT_NAME,_impl) < LHS, RHS, RET, false > {
+ static const bool value=
+ BOOST_JOIN(BOOST_TT_TRAIT_NAME,_impl1)< LHS, RHS, RET, typename ::boost::integral_constant< bool, BOOST_JOIN(BOOST_TT_TRAIT_NAME,_returns_void)< LHS, RHS >::value > >::value;
+};
+
+// in case we do not want to check for return type
+tag operator,(tag, int);
+
+// do not check for return type if 3rd template parameter RET is void
+template < typename LHS, typename RHS >
+struct BOOST_JOIN(BOOST_TT_TRAIT_NAME,_impl)< LHS, RHS, void, false > {
+ static ::boost::type_traits::yes_type check(int); // this version is preferred for types convertible to RET
+ static ::boost::type_traits::no_type check(tag); // this version is used otherwise
+
+ static const bool value=
+ sizeof(check(((make<LHS>() BOOST_TT_TRAIT_OP make<RHS>()),0)))==sizeof(::boost::type_traits::yes_type);
+};
+
+template < typename RHS, typename RET >
+struct BOOST_JOIN(BOOST_TT_TRAIT_NAME,_impl)< void, RHS, RET, false > {
+ static const bool value=false;
+};
+
+template < typename LHS, typename RET >
+struct BOOST_JOIN(BOOST_TT_TRAIT_NAME,_impl)< LHS, void, RET, false > {
+ static const bool value=false;
+};
+
+template < typename LHS >
+struct BOOST_JOIN(BOOST_TT_TRAIT_NAME,_impl)< LHS, void, void, false > {
+ static const bool value=false;
+};
+
+template < typename RHS >
+struct BOOST_JOIN(BOOST_TT_TRAIT_NAME,_impl)< void, RHS, void, false > {
+ static const bool value=false;
+};
+
+template < typename RET >
+struct BOOST_JOIN(BOOST_TT_TRAIT_NAME,_impl)< void, void, RET, false > {
+ static const bool value=false;
+};
+
+template <>
+struct BOOST_JOIN(BOOST_TT_TRAIT_NAME,_impl)< void, void, void, false > {
+ static const bool value=false;
+};
+
+} // namespace impl
+} // namespace detail
+
+BOOST_TT_AUX_BOOL_TRAIT_DEF3(BOOST_TT_TRAIT_NAME,LHS,RHS=LHS,RET=BOOST_TT_DEFAULT_RET,(::boost::detail::BOOST_JOIN(BOOST_TT_TRAIT_NAME,_impl)::BOOST_JOIN(BOOST_TT_TRAIT_NAME,_impl)<LHS,RHS,RET>::value))
+
+} // namespace boost
+
+#include <boost/type_traits/detail/bool_trait_undef.hpp>

Modified: sandbox/type_traits/boost/type_traits/detail/has_postfix_unary_operator.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/detail/has_postfix_unary_operator.hpp (original)
+++ sandbox/type_traits/boost/type_traits/detail/has_postfix_unary_operator.hpp 2011-01-08 12:43:40 EST (Sat, 08 Jan 2011)
@@ -10,8 +10,6 @@
 #include <boost/type_traits/remove_cv.hpp>
 #include <boost/type_traits/integral_constant.hpp>
 #include <boost/type_traits/detail/yes_no_type.hpp>
-#include <boost/type_traits/is_void.hpp>
-#include <boost/typeof/typeof.hpp>
 
 // should be the last #include
 #include <boost/type_traits/detail/bool_trait_def.hpp>

Modified: sandbox/type_traits/boost/type_traits/detail/has_prefix_unary_operator.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/detail/has_prefix_unary_operator.hpp (original)
+++ sandbox/type_traits/boost/type_traits/detail/has_prefix_unary_operator.hpp 2011-01-08 12:43:40 EST (Sat, 08 Jan 2011)
@@ -10,8 +10,6 @@
 #include <boost/type_traits/remove_cv.hpp>
 #include <boost/type_traits/integral_constant.hpp>
 #include <boost/type_traits/detail/yes_no_type.hpp>
-#include <boost/type_traits/is_void.hpp>
-#include <boost/typeof/typeof.hpp>
 
 // should be the last #include
 #include <boost/type_traits/detail/bool_trait_def.hpp>

Modified: sandbox/type_traits/boost/type_traits/has_operator_bit_and.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/has_operator_bit_and.hpp (original)
+++ sandbox/type_traits/boost/type_traits/has_operator_bit_and.hpp 2011-01-08 12:43:40 EST (Sat, 08 Jan 2011)
@@ -13,87 +13,7 @@
 #define BOOST_TT_TRAIT_OP &
 #define BOOST_TT_DEFAULT_RET void
 
-#include <boost/type_traits/detail/has_binary_operator.hpp>
-
-namespace boost {
-
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long double, R > : ::boost::integral_constant<bool,false> { };
-
-}
+#include <boost/type_traits/detail/has_integer_binary_operator.hpp>
 
 #undef BOOST_TT_TRAIT_NAME
 #undef BOOST_TT_TRAIT_OP

Modified: sandbox/type_traits/boost/type_traits/has_operator_bit_and_equal.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/has_operator_bit_and_equal.hpp (original)
+++ sandbox/type_traits/boost/type_traits/has_operator_bit_and_equal.hpp 2011-01-08 12:43:40 EST (Sat, 08 Jan 2011)
@@ -13,87 +13,7 @@
 #define BOOST_TT_TRAIT_OP &=
 #define BOOST_TT_DEFAULT_RET void
 
-#include <boost/type_traits/detail/has_binary_operator.hpp>
-
-namespace boost {
-
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long double, R > : ::boost::integral_constant<bool,false> { };
-
-}
+#include <boost/type_traits/detail/has_integer_binary_operator.hpp>
 
 #undef BOOST_TT_TRAIT_NAME
 #undef BOOST_TT_TRAIT_OP

Modified: sandbox/type_traits/boost/type_traits/has_operator_bit_or.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/has_operator_bit_or.hpp (original)
+++ sandbox/type_traits/boost/type_traits/has_operator_bit_or.hpp 2011-01-08 12:43:40 EST (Sat, 08 Jan 2011)
@@ -13,87 +13,7 @@
 #define BOOST_TT_TRAIT_OP |
 #define BOOST_TT_DEFAULT_RET void
 
-#include <boost/type_traits/detail/has_binary_operator.hpp>
-
-namespace boost {
-
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long double, R > : ::boost::integral_constant<bool,false> { };
-
-}
+#include <boost/type_traits/detail/has_integer_binary_operator.hpp>
 
 #undef BOOST_TT_TRAIT_NAME
 #undef BOOST_TT_TRAIT_OP

Modified: sandbox/type_traits/boost/type_traits/has_operator_bit_or_equal.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/has_operator_bit_or_equal.hpp (original)
+++ sandbox/type_traits/boost/type_traits/has_operator_bit_or_equal.hpp 2011-01-08 12:43:40 EST (Sat, 08 Jan 2011)
@@ -13,87 +13,7 @@
 #define BOOST_TT_TRAIT_OP |=
 #define BOOST_TT_DEFAULT_RET void
 
-#include <boost/type_traits/detail/has_binary_operator.hpp>
-
-namespace boost {
-
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long double, R > : ::boost::integral_constant<bool,false> { };
-
-}
+#include <boost/type_traits/detail/has_integer_binary_operator.hpp>
 
 #undef BOOST_TT_TRAIT_NAME
 #undef BOOST_TT_TRAIT_OP

Modified: sandbox/type_traits/boost/type_traits/has_operator_bit_xor.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/has_operator_bit_xor.hpp (original)
+++ sandbox/type_traits/boost/type_traits/has_operator_bit_xor.hpp 2011-01-08 12:43:40 EST (Sat, 08 Jan 2011)
@@ -13,87 +13,7 @@
 #define BOOST_TT_TRAIT_OP ^
 #define BOOST_TT_DEFAULT_RET void
 
-#include <boost/type_traits/detail/has_binary_operator.hpp>
-
-namespace boost {
-
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long double, R > : ::boost::integral_constant<bool,false> { };
-
-}
+#include <boost/type_traits/detail/has_integer_binary_operator.hpp>
 
 #undef BOOST_TT_TRAIT_NAME
 #undef BOOST_TT_TRAIT_OP

Modified: sandbox/type_traits/boost/type_traits/has_operator_bit_xor_equal.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/has_operator_bit_xor_equal.hpp (original)
+++ sandbox/type_traits/boost/type_traits/has_operator_bit_xor_equal.hpp 2011-01-08 12:43:40 EST (Sat, 08 Jan 2011)
@@ -13,87 +13,7 @@
 #define BOOST_TT_TRAIT_OP ^=
 #define BOOST_TT_DEFAULT_RET void
 
-#include <boost/type_traits/detail/has_binary_operator.hpp>
-
-namespace boost {
-
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long double, R > : ::boost::integral_constant<bool,false> { };
-
-}
+#include <boost/type_traits/detail/has_integer_binary_operator.hpp>
 
 #undef BOOST_TT_TRAIT_NAME
 #undef BOOST_TT_TRAIT_OP

Modified: sandbox/type_traits/boost/type_traits/has_operator_left_shift.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/has_operator_left_shift.hpp (original)
+++ sandbox/type_traits/boost/type_traits/has_operator_left_shift.hpp 2011-01-08 12:43:40 EST (Sat, 08 Jan 2011)
@@ -13,87 +13,7 @@
 #define BOOST_TT_TRAIT_OP <<
 #define BOOST_TT_DEFAULT_RET void
 
-#include <boost/type_traits/detail/has_binary_operator.hpp>
-
-namespace boost {
-
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long double, R > : ::boost::integral_constant<bool,false> { };
-
-}
+#include <boost/type_traits/detail/has_integer_binary_operator.hpp>
 
 #undef BOOST_TT_TRAIT_NAME
 #undef BOOST_TT_TRAIT_OP

Modified: sandbox/type_traits/boost/type_traits/has_operator_left_shift_equal.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/has_operator_left_shift_equal.hpp (original)
+++ sandbox/type_traits/boost/type_traits/has_operator_left_shift_equal.hpp 2011-01-08 12:43:40 EST (Sat, 08 Jan 2011)
@@ -13,87 +13,7 @@
 #define BOOST_TT_TRAIT_OP <<=
 #define BOOST_TT_DEFAULT_RET void
 
-#include <boost/type_traits/detail/has_binary_operator.hpp>
-
-namespace boost {
-
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long double, R > : ::boost::integral_constant<bool,false> { };
-
-}
+#include <boost/type_traits/detail/has_integer_binary_operator.hpp>
 
 #undef BOOST_TT_TRAIT_NAME
 #undef BOOST_TT_TRAIT_OP

Modified: sandbox/type_traits/boost/type_traits/has_operator_modulus.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/has_operator_modulus.hpp (original)
+++ sandbox/type_traits/boost/type_traits/has_operator_modulus.hpp 2011-01-08 12:43:40 EST (Sat, 08 Jan 2011)
@@ -13,87 +13,7 @@
 #define BOOST_TT_TRAIT_OP %
 #define BOOST_TT_DEFAULT_RET void
 
-#include <boost/type_traits/detail/has_binary_operator.hpp>
-
-namespace boost {
-
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned short int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned long int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned short int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned long int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned short int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned long int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long double, R > : ::boost::integral_constant<bool,false> { };
-
-}
+#include <boost/type_traits/detail/has_integer_binary_operator.hpp>
 
 #undef BOOST_TT_TRAIT_NAME
 #undef BOOST_TT_TRAIT_OP

Modified: sandbox/type_traits/boost/type_traits/has_operator_modulus_equal.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/has_operator_modulus_equal.hpp (original)
+++ sandbox/type_traits/boost/type_traits/has_operator_modulus_equal.hpp 2011-01-08 12:43:40 EST (Sat, 08 Jan 2011)
@@ -13,87 +13,7 @@
 #define BOOST_TT_TRAIT_OP %=
 #define BOOST_TT_DEFAULT_RET void
 
-#include <boost/type_traits/detail/has_binary_operator.hpp>
-
-namespace boost {
-
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned short int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned long int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned short int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned long int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned short int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned long int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long double, R > : ::boost::integral_constant<bool,false> { };
-
-}
+#include <boost/type_traits/detail/has_integer_binary_operator.hpp>
 
 #undef BOOST_TT_TRAIT_NAME
 #undef BOOST_TT_TRAIT_OP

Modified: sandbox/type_traits/boost/type_traits/has_operator_right_shift.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/has_operator_right_shift.hpp (original)
+++ sandbox/type_traits/boost/type_traits/has_operator_right_shift.hpp 2011-01-08 12:43:40 EST (Sat, 08 Jan 2011)
@@ -13,87 +13,7 @@
 #define BOOST_TT_TRAIT_OP >>
 #define BOOST_TT_DEFAULT_RET void
 
-#include <boost/type_traits/detail/has_binary_operator.hpp>
-
-namespace boost {
-
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long double, R > : ::boost::integral_constant<bool,false> { };
-
-}
+#include <boost/type_traits/detail/has_integer_binary_operator.hpp>
 
 #undef BOOST_TT_TRAIT_NAME
 #undef BOOST_TT_TRAIT_OP

Modified: sandbox/type_traits/boost/type_traits/has_operator_right_shift_equal.hpp
==============================================================================
--- sandbox/type_traits/boost/type_traits/has_operator_right_shift_equal.hpp (original)
+++ sandbox/type_traits/boost/type_traits/has_operator_right_shift_equal.hpp 2011-01-08 12:43:40 EST (Sat, 08 Jan 2011)
@@ -13,87 +13,7 @@
 #define BOOST_TT_TRAIT_OP >>=
 #define BOOST_TT_DEFAULT_RET void
 
-#include <boost/type_traits/detail/has_binary_operator.hpp>
-
-namespace boost {
-
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < bool, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < signed char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned char, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < short unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long unsigned int, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < wchar_t, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < float, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < double, long double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, bool, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, signed char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, short int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned char, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, short unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long unsigned int, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, wchar_t, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, float, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, double, R > : ::boost::integral_constant<bool,false> { };
-template < typename R > struct BOOST_TT_TRAIT_NAME < long double, long double, R > : ::boost::integral_constant<bool,false> { };
-
-}
+#include <boost/type_traits/detail/has_integer_binary_operator.hpp>
 
 #undef BOOST_TT_TRAIT_NAME
 #undef BOOST_TT_TRAIT_OP


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk