$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r60508 - sandbox/statistics/detail/assign/boost/assign/auto_size/reference_wrapper
From: erwann.rogard_at_[hidden]
Date: 2010-03-12 01:53:58
Author: e_r
Date: 2010-03-12 01:53:57 EST (Fri, 12 Mar 2010)
New Revision: 60508
URL: http://svn.boost.org/trac/boost/changeset/60508
Log:
m
Added:
   sandbox/statistics/detail/assign/boost/assign/auto_size/reference_wrapper/chain_traits.hpp   (contents, props changed)
Added: sandbox/statistics/detail/assign/boost/assign/auto_size/reference_wrapper/chain_traits.hpp
==============================================================================
--- (empty file)
+++ sandbox/statistics/detail/assign/boost/assign/auto_size/reference_wrapper/chain_traits.hpp	2010-03-12 01:53:57 EST (Fri, 12 Mar 2010)
@@ -0,0 +1,55 @@
+//////////////////////////////////////////////////////////////////////////////
+// assign::detail::chain_traits.hpp                                         //
+//                                                                          //
+//  (C) Copyright 2010 Erwann Rogard                                        //
+//  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)        //
+//////////////////////////////////////////////////////////////////////////////
+#ifndef BOOST_ASSIGN_DETAIL_CHAIN_TRAITS_ER_2010_HPP
+#define BOOST_ASSIGN_DETAIL_CHAIN_TRAITS_ER_2010_HPP
+#include <boost/mpl/bool.hpp>
+
+namespace boost{
+namespace assign{
+namespace detail{
+
+// fwd declare
+template<typename T> struct assign_reference_copy;
+template<typename T> struct assign_reference_rebind;
+template<typename T> struct is_ref_wrapper;
+
+template<typename T>
+struct is_ref_wrapper<assign_reference_copy<T> >
+    : boost::mpl::bool_<true>{};
+    
+template<typename T>
+struct is_ref_wrapper<assign_reference_rebind<T> >
+    : boost::mpl::bool_<true>{};
+
+namespace ref_wrapper_traits{
+    template<typename T> struct tag_of;
+    namespace tag{ struct default_; }
+
+    template<typename T>
+    struct tag_of< 
+        boost::assign::detail::assign_reference_copy<T> 
+    > 
+    {
+        typedef ref_wrapper_traits::tag::default_ type;
+    };
+    
+    template<typename T>
+    struct tag_of< 
+        boost::assign::detail::assign_reference_rebind<T> 
+    > 
+    {
+        typedef ref_wrapper_traits::tag::default_ type;
+    };
+
+}// ref_wrapper_traits
+}// detail
+}// assign
+}// boost
+
+#endif