]> git.donarmstrong.com Git - rsem.git/blobdiff - boost/fusion/sequence/intrinsic/at.hpp
Updated boost to v1.55.0
[rsem.git] / boost / fusion / sequence / intrinsic / at.hpp
index 9ccbfc64a21e1f224779c6d534923c58b1292576..92da7bbd2c9d8fb947596049e04b0ef15fbd8908 100644 (file)
@@ -1,7 +1,7 @@
 /*=============================================================================
-    Copyright (c) 2001-2006 Joel de Guzman
+    Copyright (c) 2001-2011 Joel de Guzman
 
-    Distributed under the Boost Software License, Version 1.0. (See accompanying 
+    Distributed under the Boost Software License, Version 1.0. (See accompanying
     file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
 ==============================================================================*/
 #if !defined(FUSION_AT_05042005_0722)
@@ -9,6 +9,7 @@
 
 #include <boost/mpl/int.hpp>
 #include <boost/type_traits/is_const.hpp>
+#include <boost/fusion/sequence/intrinsic_fwd.hpp>
 #include <boost/fusion/support/tag_of.hpp>
 #include <boost/fusion/support/detail/access.hpp>
 
@@ -20,6 +21,7 @@ namespace boost { namespace fusion
     struct boost_array_tag; // boost::array tag
     struct mpl_sequence_tag; // mpl sequence tag
     struct std_pair_tag; // std::pair tag
+    struct std_tuple_tag; // std::tuple tag
 
     namespace extension
     {
@@ -48,12 +50,15 @@ namespace boost { namespace fusion
 
         template <>
         struct at_impl<std_pair_tag>;
+
+        template <>
+        struct at_impl<std_tuple_tag>;
     }
 
     namespace result_of
     {
         template <typename Sequence, typename N>
-        struct at 
+        struct at
             : extension::at_impl<typename detail::tag_of<Sequence>::type>::
                 template apply<Sequence, N>
         {};
@@ -66,7 +71,7 @@ namespace boost { namespace fusion
 
 
     template <typename N, typename Sequence>
-    inline typename 
+    inline typename
         lazy_disable_if<
             is_const<Sequence>
           , result_of::at<Sequence, N>
@@ -84,7 +89,7 @@ namespace boost { namespace fusion
     }
 
     template <int N, typename Sequence>
-    inline typename 
+    inline typename
         lazy_disable_if<
             is_const<Sequence>
           , result_of::at_c<Sequence, N>