[Boostheaders-commits] r37 - in pkg/BH/inst/include/boost/fusion/container: list/detail/preprocessed vector/detail/preprocessed

noreply at r-forge.r-project.org noreply at r-forge.r-project.org
Sat May 4 03:03:49 CEST 2013


Author: edd
Date: 2013-05-04 03:03:48 +0200 (Sat, 04 May 2013)
New Revision: 37

Added:
   pkg/BH/inst/include/boost/fusion/container/list/detail/preprocessed/list10_fwd.hpp
   pkg/BH/inst/include/boost/fusion/container/list/detail/preprocessed/list20_fwd.hpp
   pkg/BH/inst/include/boost/fusion/container/list/detail/preprocessed/list30_fwd.hpp
   pkg/BH/inst/include/boost/fusion/container/list/detail/preprocessed/list40_fwd.hpp
   pkg/BH/inst/include/boost/fusion/container/list/detail/preprocessed/list50_fwd.hpp
   pkg/BH/inst/include/boost/fusion/container/list/detail/preprocessed/list_fwd.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vector.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vector10.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vector10_fwd.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vector20.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vector20_fwd.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vector30.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vector30_fwd.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vector40.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vector40_fwd.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vector50.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vector50_fwd.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser10.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser20.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser30.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser40.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vector_chooser50.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vector_fwd.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vvector10.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vvector10_fwd.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vvector20.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vvector20_fwd.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vvector30.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vvector30_fwd.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vvector40.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vvector40_fwd.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vvector50.hpp
   pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vvector50_fwd.hpp
Log:
steps towards BH 1.51.0-1 with foreach and math distributions


Added: pkg/BH/inst/include/boost/fusion/container/list/detail/preprocessed/list10_fwd.hpp
===================================================================
--- pkg/BH/inst/include/boost/fusion/container/list/detail/preprocessed/list10_fwd.hpp	                        (rev 0)
+++ pkg/BH/inst/include/boost/fusion/container/list/detail/preprocessed/list10_fwd.hpp	2013-05-04 01:03:48 UTC (rev 37)
@@ -0,0 +1,16 @@
+/*=============================================================================
+    Copyright (c) 2001-2011 Joel de Guzman
+
+    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)
+
+    This is an auto-generated file. Do not edit!
+==============================================================================*/
+namespace boost { namespace fusion
+{
+    struct void_;
+    template <
+        typename T0 = void_ , typename T1 = void_ , typename T2 = void_ , typename T3 = void_ , typename T4 = void_ , typename T5 = void_ , typename T6 = void_ , typename T7 = void_ , typename T8 = void_ , typename T9 = void_
+    >
+    struct list;
+}}

Added: pkg/BH/inst/include/boost/fusion/container/list/detail/preprocessed/list20_fwd.hpp
===================================================================
--- pkg/BH/inst/include/boost/fusion/container/list/detail/preprocessed/list20_fwd.hpp	                        (rev 0)
+++ pkg/BH/inst/include/boost/fusion/container/list/detail/preprocessed/list20_fwd.hpp	2013-05-04 01:03:48 UTC (rev 37)
@@ -0,0 +1,16 @@
+/*=============================================================================
+    Copyright (c) 2001-2011 Joel de Guzman
+
+    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)
+
+    This is an auto-generated file. Do not edit!
+==============================================================================*/
+namespace boost { namespace fusion
+{
+    struct void_;
+    template <
+        typename T0 = void_ , typename T1 = void_ , typename T2 = void_ , typename T3 = void_ , typename T4 = void_ , typename T5 = void_ , typename T6 = void_ , typename T7 = void_ , typename T8 = void_ , typename T9 = void_ , typename T10 = void_ , typename T11 = void_ , typename T12 = void_ , typename T13 = void_ , typename T14 = void_ , typename T15 = void_ , typename T16 = void_ , typename T17 = void_ , typename T18 = void_ , typename T19 = void_
+    >
+    struct list;
+}}

Added: pkg/BH/inst/include/boost/fusion/container/list/detail/preprocessed/list30_fwd.hpp
===================================================================
--- pkg/BH/inst/include/boost/fusion/container/list/detail/preprocessed/list30_fwd.hpp	                        (rev 0)
+++ pkg/BH/inst/include/boost/fusion/container/list/detail/preprocessed/list30_fwd.hpp	2013-05-04 01:03:48 UTC (rev 37)
@@ -0,0 +1,16 @@
+/*=============================================================================
+    Copyright (c) 2001-2011 Joel de Guzman
+
+    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)
+
+    This is an auto-generated file. Do not edit!
+==============================================================================*/
+namespace boost { namespace fusion
+{
+    struct void_;
+    template <
+        typename T0 = void_ , typename T1 = void_ , typename T2 = void_ , typename T3 = void_ , typename T4 = void_ , typename T5 = void_ , typename T6 = void_ , typename T7 = void_ , typename T8 = void_ , typename T9 = void_ , typename T10 = void_ , typename T11 = void_ , typename T12 = void_ , typename T13 = void_ , typename T14 = void_ , typename T15 = void_ , typename T16 = void_ , typename T17 = void_ , typename T18 = void_ , typename T19 = void_ , typename T20 = void_ , typename T21 = void_ , typename T22 = void_ , typename T23 = void_ , typename T24 = void_ , typename T25 = void_ , typename T26 = void_ , typename T27 = void_ , typename T28 = void_ , typename T29 = void_
+    >
+    struct list;
+}}

Added: pkg/BH/inst/include/boost/fusion/container/list/detail/preprocessed/list40_fwd.hpp
===================================================================
--- pkg/BH/inst/include/boost/fusion/container/list/detail/preprocessed/list40_fwd.hpp	                        (rev 0)
+++ pkg/BH/inst/include/boost/fusion/container/list/detail/preprocessed/list40_fwd.hpp	2013-05-04 01:03:48 UTC (rev 37)
@@ -0,0 +1,16 @@
+/*=============================================================================
+    Copyright (c) 2001-2011 Joel de Guzman
+
+    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)
+
+    This is an auto-generated file. Do not edit!
+==============================================================================*/
+namespace boost { namespace fusion
+{
+    struct void_;
+    template <
+        typename T0 = void_ , typename T1 = void_ , typename T2 = void_ , typename T3 = void_ , typename T4 = void_ , typename T5 = void_ , typename T6 = void_ , typename T7 = void_ , typename T8 = void_ , typename T9 = void_ , typename T10 = void_ , typename T11 = void_ , typename T12 = void_ , typename T13 = void_ , typename T14 = void_ , typename T15 = void_ , typename T16 = void_ , typename T17 = void_ , typename T18 = void_ , typename T19 = void_ , typename T20 = void_ , typename T21 = void_ , typename T22 = void_ , typename T23 = void_ , typename T24 = void_ , typename T25 = void_ , typename T26 = void_ , typename T27 = void_ , typename T28 = void_ , typename T29 = void_ , typename T30 = void_ , typename T31 = void_ , typename T32 = void_ , typename T33 = void_ , typename T34 = void_ , typename T35 = void_ , typename T36 = void_ , typename T37 = void_ , typename T38 = void_ , typename T39 = void_
+    >
+    struct list;
+}}

Added: pkg/BH/inst/include/boost/fusion/container/list/detail/preprocessed/list50_fwd.hpp
===================================================================
--- pkg/BH/inst/include/boost/fusion/container/list/detail/preprocessed/list50_fwd.hpp	                        (rev 0)
+++ pkg/BH/inst/include/boost/fusion/container/list/detail/preprocessed/list50_fwd.hpp	2013-05-04 01:03:48 UTC (rev 37)
@@ -0,0 +1,16 @@
+/*=============================================================================
+    Copyright (c) 2001-2011 Joel de Guzman
+
+    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)
+
+    This is an auto-generated file. Do not edit!
+==============================================================================*/
+namespace boost { namespace fusion
+{
+    struct void_;
+    template <
+        typename T0 = void_ , typename T1 = void_ , typename T2 = void_ , typename T3 = void_ , typename T4 = void_ , typename T5 = void_ , typename T6 = void_ , typename T7 = void_ , typename T8 = void_ , typename T9 = void_ , typename T10 = void_ , typename T11 = void_ , typename T12 = void_ , typename T13 = void_ , typename T14 = void_ , typename T15 = void_ , typename T16 = void_ , typename T17 = void_ , typename T18 = void_ , typename T19 = void_ , typename T20 = void_ , typename T21 = void_ , typename T22 = void_ , typename T23 = void_ , typename T24 = void_ , typename T25 = void_ , typename T26 = void_ , typename T27 = void_ , typename T28 = void_ , typename T29 = void_ , typename T30 = void_ , typename T31 = void_ , typename T32 = void_ , typename T33 = void_ , typename T34 = void_ , typename T35 = void_ , typename T36 = void_ , typename T37 = void_ , typename T38 = void_ , typename T39 = void_ , typename T40 = void_ , typename T41 = void_ , typename T42 = void_ , typename T43 = void_ , typename T44 = void_ , typename T45 = void_ , typename T46 = void_ , typename T47 = void_ , typename T48 = void_ , typename T49 = void_
+    >
+    struct list;
+}}

Added: pkg/BH/inst/include/boost/fusion/container/list/detail/preprocessed/list_fwd.hpp
===================================================================
--- pkg/BH/inst/include/boost/fusion/container/list/detail/preprocessed/list_fwd.hpp	                        (rev 0)
+++ pkg/BH/inst/include/boost/fusion/container/list/detail/preprocessed/list_fwd.hpp	2013-05-04 01:03:48 UTC (rev 37)
@@ -0,0 +1,22 @@
+/*=============================================================================
+    Copyright (c) 2001-2011 Joel de Guzman
+
+    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)
+
+    This is an auto-generated file. Do not edit!
+==============================================================================*/
+
+#if FUSION_MAX_LIST_SIZE <= 10
+#include <boost/fusion/container/list/detail/preprocessed/list10_fwd.hpp>
+#elif FUSION_MAX_LIST_SIZE <= 20
+#include <boost/fusion/container/list/detail/preprocessed/list20_fwd.hpp>
+#elif FUSION_MAX_LIST_SIZE <= 30
+#include <boost/fusion/container/list/detail/preprocessed/list30_fwd.hpp>
+#elif FUSION_MAX_LIST_SIZE <= 40
+#include <boost/fusion/container/list/detail/preprocessed/list40_fwd.hpp>
+#elif FUSION_MAX_LIST_SIZE <= 50
+#include <boost/fusion/container/list/detail/preprocessed/list50_fwd.hpp>
+#else
+#error "FUSION_MAX_LIST_SIZE out of bounds for preprocessed headers"
+#endif

Added: pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vector.hpp
===================================================================
--- pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vector.hpp	                        (rev 0)
+++ pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vector.hpp	2013-05-04 01:03:48 UTC (rev 37)
@@ -0,0 +1,22 @@
+/*=============================================================================
+    Copyright (c) 2001-2011 Joel de Guzman
+
+    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)
+
+    This is an auto-generated file. Do not edit!
+==============================================================================*/
+
+#if FUSION_MAX_VECTOR_SIZE <= 10
+#include <boost/fusion/container/vector/detail/preprocessed/vvector10.hpp>
+#elif FUSION_MAX_VECTOR_SIZE <= 20
+#include <boost/fusion/container/vector/detail/preprocessed/vvector20.hpp>
+#elif FUSION_MAX_VECTOR_SIZE <= 30
+#include <boost/fusion/container/vector/detail/preprocessed/vvector30.hpp>
+#elif FUSION_MAX_VECTOR_SIZE <= 40
+#include <boost/fusion/container/vector/detail/preprocessed/vvector40.hpp>
+#elif FUSION_MAX_VECTOR_SIZE <= 50
+#include <boost/fusion/container/vector/detail/preprocessed/vvector50.hpp>
+#else
+#error "FUSION_MAX_VECTOR_SIZE out of bounds for preprocessed headers"
+#endif

Added: pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vector10.hpp
===================================================================
--- pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vector10.hpp	                        (rev 0)
+++ pkg/BH/inst/include/boost/fusion/container/vector/detail/preprocessed/vector10.hpp	2013-05-04 01:03:48 UTC (rev 37)
@@ -0,0 +1,1004 @@
+/*=============================================================================
+    Copyright (c) 2001-2011 Joel de Guzman
+
+    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)
+
+    This is an auto-generated file. Do not edit!
+==============================================================================*/
+namespace boost { namespace fusion
+{
+    template <typename T0>
+    struct vector_data1
+    {
+        vector_data1()
+            : m0() {}
+        vector_data1(
+            typename detail::call_param<T0 >::type _0)
+            : m0(_0) {}
+        vector_data1(
+            vector_data1 const& other)
+            : m0(other.m0) {}
+        vector_data1&
+        operator=(vector_data1 const& vec)
+        {
+            this->m0 = vec.m0;
+            return *this;
+        }
+        template <typename Sequence>
+        static vector_data1
+        init_from_sequence(Sequence const& seq)
+        {
+            typedef typename result_of::begin<Sequence const>::type I0;
+            I0 i0 = fusion::begin(seq);
+            
+            return vector_data1(*i0);
+        }
+        template <typename Sequence>
+        static vector_data1
+        init_from_sequence(Sequence& seq)
+        {
+            typedef typename result_of::begin<Sequence>::type I0;
+            I0 i0 = fusion::begin(seq);
+            
+            return vector_data1(*i0);
+        }
+        T0 m0;
+    };
+    template <typename T0>
+    struct vector1
+      : vector_data1<T0>
+      , sequence_base<vector1<T0> >
+    {
+        typedef vector1<T0> this_type;
+        typedef vector_data1<T0> base_type;
+        typedef mpl::vector1<T0> types;
+        typedef vector_tag fusion_tag;
+        typedef fusion_sequence_tag tag; 
+        typedef mpl::false_ is_view;
+        typedef random_access_traversal_tag category;
+        typedef mpl::int_<1> size;
+        vector1() {}
+        explicit
+        vector1(
+            typename detail::call_param<T0 >::type _0)
+            : base_type(_0) {}
+        template <typename U0>
+        vector1(
+            vector1<U0> const& vec)
+            : base_type(vec.m0) {}
+        template <typename Sequence>
+        vector1(
+            Sequence const& seq
+          , typename boost::disable_if<is_convertible<Sequence, T0> >::type* = 0
+            )
+            : base_type(base_type::init_from_sequence(seq)) {}
+        template <typename Sequence>
+        vector1(
+            Sequence& seq
+          , typename boost::disable_if<is_convertible<Sequence, T0> >::type* = 0
+            )
+            : base_type(base_type::init_from_sequence(seq)) {}
+        template <typename U0>
+        vector1&
+        operator=(vector1<U0> const& vec)
+        {
+            this->m0 = vec.m0;
+            return *this;
+        }
+        template <typename Sequence>
+        typename boost::disable_if<is_convertible<Sequence, T0>, this_type&>::type
+        operator=(Sequence const& seq)
+        {
+            typedef typename result_of::begin<Sequence const>::type I0;
+            I0 i0 = fusion::begin(seq);
+            
+            this->m0 = *i0;
+            return *this;
+        }
+        typename add_reference<T0>::type at_impl(mpl::int_<0>) { return this->m0; } typename add_reference<typename add_const<T0>::type>::type at_impl(mpl::int_<0>) const { return this->m0; }
+        template<typename I>
+        typename add_reference<typename mpl::at<types, I>::type>::type
+        at_impl(I)
+        {
+            return this->at_impl(mpl::int_<I::value>());
+        }
+        template<typename I>
+        typename add_reference<typename add_const<typename mpl::at<types, I>::type>::type>::type
+        at_impl(I) const
+        {
+            return this->at_impl(mpl::int_<I::value>());
+        }
+    };
+    template <typename T0 , typename T1>
+    struct vector_data2
+    {
+        vector_data2()
+            : m0() , m1() {}
+        vector_data2(
+            typename detail::call_param<T0 >::type _0 , typename detail::call_param<T1 >::type _1)
+            : m0(_0) , m1(_1) {}
+        vector_data2(
+            vector_data2 const& other)
+            : m0(other.m0) , m1(other.m1) {}
+        vector_data2&
+        operator=(vector_data2 const& vec)
+        {
+            this->m0 = vec.m0; this->m1 = vec.m1;
+            return *this;
+        }
+        template <typename Sequence>
+        static vector_data2
+        init_from_sequence(Sequence const& seq)
+        {
+            typedef typename result_of::begin<Sequence const>::type I0;
+            I0 i0 = fusion::begin(seq);
+            typedef typename result_of::next< I0>::type I1; I1 i1 = fusion::next(i0);
+            return vector_data2(*i0 , *i1);
+        }
+        template <typename Sequence>
+        static vector_data2
+        init_from_sequence(Sequence& seq)
+        {
+            typedef typename result_of::begin<Sequence>::type I0;
+            I0 i0 = fusion::begin(seq);
+            typedef typename result_of::next< I0>::type I1; I1 i1 = fusion::next(i0);
+            return vector_data2(*i0 , *i1);
+        }
+        T0 m0; T1 m1;
+    };
+    template <typename T0 , typename T1>
+    struct vector2
+      : vector_data2<T0 , T1>
+      , sequence_base<vector2<T0 , T1> >
+    {
+        typedef vector2<T0 , T1> this_type;
+        typedef vector_data2<T0 , T1> base_type;
+        typedef mpl::vector2<T0 , T1> types;
+        typedef vector_tag fusion_tag;
+        typedef fusion_sequence_tag tag; 
+        typedef mpl::false_ is_view;
+        typedef random_access_traversal_tag category;
+        typedef mpl::int_<2> size;
+        vector2() {}
+        vector2(
+            typename detail::call_param<T0 >::type _0 , typename detail::call_param<T1 >::type _1)
+            : base_type(_0 , _1) {}
+        template <typename U0 , typename U1>
+        vector2(
+            vector2<U0 , U1> const& vec)
+            : base_type(vec.m0 , vec.m1) {}
+        template <typename Sequence>
+        vector2(
+            Sequence const& seq
+            )
+            : base_type(base_type::init_from_sequence(seq)) {}
+        template <typename Sequence>
+        vector2(
+            Sequence& seq
+            )
+            : base_type(base_type::init_from_sequence(seq)) {}
+        template <typename U0 , typename U1>
+        vector2&
+        operator=(vector2<U0 , U1> const& vec)
+        {
+            this->m0 = vec.m0; this->m1 = vec.m1;
+            return *this;
+        }
+        template <typename Sequence>
+        typename boost::disable_if<is_convertible<Sequence, T0>, this_type&>::type
+        operator=(Sequence const& seq)
+        {
+            typedef typename result_of::begin<Sequence const>::type I0;
+            I0 i0 = fusion::begin(seq);
+            typedef typename result_of::next< I0>::type I1; I1 i1 = fusion::next(i0);
+            this->m0 = *i0; this->m1 = *i1;
+            return *this;
+        }
+        typename add_reference<T0>::type at_impl(mpl::int_<0>) { return this->m0; } typename add_reference<typename add_const<T0>::type>::type at_impl(mpl::int_<0>) const { return this->m0; } typename add_reference<T1>::type at_impl(mpl::int_<1>) { return this->m1; } typename add_reference<typename add_const<T1>::type>::type at_impl(mpl::int_<1>) const { return this->m1; }
+        template<typename I>
+        typename add_reference<typename mpl::at<types, I>::type>::type
+        at_impl(I)
+        {
+            return this->at_impl(mpl::int_<I::value>());
+        }
+        template<typename I>
+        typename add_reference<typename add_const<typename mpl::at<types, I>::type>::type>::type
+        at_impl(I) const
+        {
+            return this->at_impl(mpl::int_<I::value>());
+        }
+    };
+    template <typename T0 , typename T1 , typename T2>
+    struct vector_data3
+    {
+        vector_data3()
+            : m0() , m1() , m2() {}
+        vector_data3(
+            typename detail::call_param<T0 >::type _0 , typename detail::call_param<T1 >::type _1 , typename detail::call_param<T2 >::type _2)
+            : m0(_0) , m1(_1) , m2(_2) {}
+        vector_data3(
+            vector_data3 const& other)
+            : m0(other.m0) , m1(other.m1) , m2(other.m2) {}
+        vector_data3&
+        operator=(vector_data3 const& vec)
+        {
+            this->m0 = vec.m0; this->m1 = vec.m1; this->m2 = vec.m2;
+            return *this;
+        }
+        template <typename Sequence>
+        static vector_data3
+        init_from_sequence(Sequence const& seq)
+        {
+            typedef typename result_of::begin<Sequence const>::type I0;
+            I0 i0 = fusion::begin(seq);
+            typedef typename result_of::next< I0>::type I1; I1 i1 = fusion::next(i0); typedef typename result_of::next< I1>::type I2; I2 i2 = fusion::next(i1);
+            return vector_data3(*i0 , *i1 , *i2);
+        }
+        template <typename Sequence>
+        static vector_data3
+        init_from_sequence(Sequence& seq)
+        {
+            typedef typename result_of::begin<Sequence>::type I0;
+            I0 i0 = fusion::begin(seq);
+            typedef typename result_of::next< I0>::type I1; I1 i1 = fusion::next(i0); typedef typename result_of::next< I1>::type I2; I2 i2 = fusion::next(i1);
+            return vector_data3(*i0 , *i1 , *i2);
+        }
+        T0 m0; T1 m1; T2 m2;
+    };
+    template <typename T0 , typename T1 , typename T2>
+    struct vector3
+      : vector_data3<T0 , T1 , T2>
+      , sequence_base<vector3<T0 , T1 , T2> >
+    {
+        typedef vector3<T0 , T1 , T2> this_type;
+        typedef vector_data3<T0 , T1 , T2> base_type;
+        typedef mpl::vector3<T0 , T1 , T2> types;
+        typedef vector_tag fusion_tag;
+        typedef fusion_sequence_tag tag; 
+        typedef mpl::false_ is_view;
+        typedef random_access_traversal_tag category;
+        typedef mpl::int_<3> size;
+        vector3() {}
+        vector3(
+            typename detail::call_param<T0 >::type _0 , typename detail::call_param<T1 >::type _1 , typename detail::call_param<T2 >::type _2)
+            : base_type(_0 , _1 , _2) {}
+        template <typename U0 , typename U1 , typename U2>
+        vector3(
+            vector3<U0 , U1 , U2> const& vec)
+            : base_type(vec.m0 , vec.m1 , vec.m2) {}
+        template <typename Sequence>
+        vector3(
+            Sequence const& seq
+            )
+            : base_type(base_type::init_from_sequence(seq)) {}
+        template <typename Sequence>
+        vector3(
+            Sequence& seq
+            )
+            : base_type(base_type::init_from_sequence(seq)) {}
+        template <typename U0 , typename U1 , typename U2>
+        vector3&
+        operator=(vector3<U0 , U1 , U2> const& vec)
+        {
+            this->m0 = vec.m0; this->m1 = vec.m1; this->m2 = vec.m2;
+            return *this;
+        }
+        template <typename Sequence>
+        typename boost::disable_if<is_convertible<Sequence, T0>, this_type&>::type
+        operator=(Sequence const& seq)
+        {
+            typedef typename result_of::begin<Sequence const>::type I0;
+            I0 i0 = fusion::begin(seq);
+            typedef typename result_of::next< I0>::type I1; I1 i1 = fusion::next(i0); typedef typename result_of::next< I1>::type I2; I2 i2 = fusion::next(i1);
+            this->m0 = *i0; this->m1 = *i1; this->m2 = *i2;
+            return *this;
+        }
+        typename add_reference<T0>::type at_impl(mpl::int_<0>) { return this->m0; } typename add_reference<typename add_const<T0>::type>::type at_impl(mpl::int_<0>) const { return this->m0; } typename add_reference<T1>::type at_impl(mpl::int_<1>) { return this->m1; } typename add_reference<typename add_const<T1>::type>::type at_impl(mpl::int_<1>) const { return this->m1; } typename add_reference<T2>::type at_impl(mpl::int_<2>) { return this->m2; } typename add_reference<typename add_const<T2>::type>::type at_impl(mpl::int_<2>) const { return this->m2; }
+        template<typename I>
+        typename add_reference<typename mpl::at<types, I>::type>::type
+        at_impl(I)
+        {
+            return this->at_impl(mpl::int_<I::value>());
+        }
+        template<typename I>
+        typename add_reference<typename add_const<typename mpl::at<types, I>::type>::type>::type
+        at_impl(I) const
+        {
+            return this->at_impl(mpl::int_<I::value>());
+        }
+    };
+    template <typename T0 , typename T1 , typename T2 , typename T3>
+    struct vector_data4
+    {
+        vector_data4()
+            : m0() , m1() , m2() , m3() {}
+        vector_data4(
+            typename detail::call_param<T0 >::type _0 , typename detail::call_param<T1 >::type _1 , typename detail::call_param<T2 >::type _2 , typename detail::call_param<T3 >::type _3)
+            : m0(_0) , m1(_1) , m2(_2) , m3(_3) {}
+        vector_data4(
+            vector_data4 const& other)
+            : m0(other.m0) , m1(other.m1) , m2(other.m2) , m3(other.m3) {}
+        vector_data4&
+        operator=(vector_data4 const& vec)
+        {
+            this->m0 = vec.m0; this->m1 = vec.m1; this->m2 = vec.m2; this->m3 = vec.m3;
+            return *this;
+        }
+        template <typename Sequence>
+        static vector_data4
+        init_from_sequence(Sequence const& seq)
+        {
+            typedef typename result_of::begin<Sequence const>::type I0;
+            I0 i0 = fusion::begin(seq);
+            typedef typename result_of::next< I0>::type I1; I1 i1 = fusion::next(i0); typedef typename result_of::next< I1>::type I2; I2 i2 = fusion::next(i1); typedef typename result_of::next< I2>::type I3; I3 i3 = fusion::next(i2);
+            return vector_data4(*i0 , *i1 , *i2 , *i3);
+        }
+        template <typename Sequence>
+        static vector_data4
+        init_from_sequence(Sequence& seq)
+        {
+            typedef typename result_of::begin<Sequence>::type I0;
+            I0 i0 = fusion::begin(seq);
+            typedef typename result_of::next< I0>::type I1; I1 i1 = fusion::next(i0); typedef typename result_of::next< I1>::type I2; I2 i2 = fusion::next(i1); typedef typename result_of::next< I2>::type I3; I3 i3 = fusion::next(i2);
+            return vector_data4(*i0 , *i1 , *i2 , *i3);
+        }
+        T0 m0; T1 m1; T2 m2; T3 m3;
+    };
+    template <typename T0 , typename T1 , typename T2 , typename T3>
+    struct vector4
+      : vector_data4<T0 , T1 , T2 , T3>
+      , sequence_base<vector4<T0 , T1 , T2 , T3> >
+    {
+        typedef vector4<T0 , T1 , T2 , T3> this_type;
+        typedef vector_data4<T0 , T1 , T2 , T3> base_type;
+        typedef mpl::vector4<T0 , T1 , T2 , T3> types;
+        typedef vector_tag fusion_tag;
+        typedef fusion_sequence_tag tag; 
+        typedef mpl::false_ is_view;
+        typedef random_access_traversal_tag category;
+        typedef mpl::int_<4> size;
+        vector4() {}
+        vector4(
+            typename detail::call_param<T0 >::type _0 , typename detail::call_param<T1 >::type _1 , typename detail::call_param<T2 >::type _2 , typename detail::call_param<T3 >::type _3)
+            : base_type(_0 , _1 , _2 , _3) {}
+        template <typename U0 , typename U1 , typename U2 , typename U3>
+        vector4(
+            vector4<U0 , U1 , U2 , U3> const& vec)
+            : base_type(vec.m0 , vec.m1 , vec.m2 , vec.m3) {}
+        template <typename Sequence>
+        vector4(
+            Sequence const& seq
+            )
+            : base_type(base_type::init_from_sequence(seq)) {}
+        template <typename Sequence>
+        vector4(
+            Sequence& seq
+            )
+            : base_type(base_type::init_from_sequence(seq)) {}
+        template <typename U0 , typename U1 , typename U2 , typename U3>
+        vector4&
+        operator=(vector4<U0 , U1 , U2 , U3> const& vec)
+        {
+            this->m0 = vec.m0; this->m1 = vec.m1; this->m2 = vec.m2; this->m3 = vec.m3;
+            return *this;
+        }
+        template <typename Sequence>
+        typename boost::disable_if<is_convertible<Sequence, T0>, this_type&>::type
+        operator=(Sequence const& seq)
+        {
+            typedef typename result_of::begin<Sequence const>::type I0;
+            I0 i0 = fusion::begin(seq);
+            typedef typename result_of::next< I0>::type I1; I1 i1 = fusion::next(i0); typedef typename result_of::next< I1>::type I2; I2 i2 = fusion::next(i1); typedef typename result_of::next< I2>::type I3; I3 i3 = fusion::next(i2);
+            this->m0 = *i0; this->m1 = *i1; this->m2 = *i2; this->m3 = *i3;
+            return *this;
+        }
+        typename add_reference<T0>::type at_impl(mpl::int_<0>) { return this->m0; } typename add_reference<typename add_const<T0>::type>::type at_impl(mpl::int_<0>) const { return this->m0; } typename add_reference<T1>::type at_impl(mpl::int_<1>) { return this->m1; } typename add_reference<typename add_const<T1>::type>::type at_impl(mpl::int_<1>) const { return this->m1; } typename add_reference<T2>::type at_impl(mpl::int_<2>) { return this->m2; } typename add_reference<typename add_const<T2>::type>::type at_impl(mpl::int_<2>) const { return this->m2; } typename add_reference<T3>::type at_impl(mpl::int_<3>) { return this->m3; } typename add_reference<typename add_const<T3>::type>::type at_impl(mpl::int_<3>) const { return this->m3; }
+        template<typename I>
+        typename add_reference<typename mpl::at<types, I>::type>::type
+        at_impl(I)
+        {
+            return this->at_impl(mpl::int_<I::value>());
+        }
+        template<typename I>
+        typename add_reference<typename add_const<typename mpl::at<types, I>::type>::type>::type
+        at_impl(I) const
+        {
+            return this->at_impl(mpl::int_<I::value>());
+        }
+    };
+    template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4>
+    struct vector_data5
+    {
+        vector_data5()
+            : m0() , m1() , m2() , m3() , m4() {}
+        vector_data5(
+            typename detail::call_param<T0 >::type _0 , typename detail::call_param<T1 >::type _1 , typename detail::call_param<T2 >::type _2 , typename detail::call_param<T3 >::type _3 , typename detail::call_param<T4 >::type _4)
+            : m0(_0) , m1(_1) , m2(_2) , m3(_3) , m4(_4) {}
+        vector_data5(
+            vector_data5 const& other)
+            : m0(other.m0) , m1(other.m1) , m2(other.m2) , m3(other.m3) , m4(other.m4) {}
+        vector_data5&
+        operator=(vector_data5 const& vec)
+        {
+            this->m0 = vec.m0; this->m1 = vec.m1; this->m2 = vec.m2; this->m3 = vec.m3; this->m4 = vec.m4;
+            return *this;
+        }
+        template <typename Sequence>
+        static vector_data5
+        init_from_sequence(Sequence const& seq)
+        {
+            typedef typename result_of::begin<Sequence const>::type I0;
+            I0 i0 = fusion::begin(seq);
+            typedef typename result_of::next< I0>::type I1; I1 i1 = fusion::next(i0); typedef typename result_of::next< I1>::type I2; I2 i2 = fusion::next(i1); typedef typename result_of::next< I2>::type I3; I3 i3 = fusion::next(i2); typedef typename result_of::next< I3>::type I4; I4 i4 = fusion::next(i3);
+            return vector_data5(*i0 , *i1 , *i2 , *i3 , *i4);
+        }
+        template <typename Sequence>
+        static vector_data5
+        init_from_sequence(Sequence& seq)
+        {
+            typedef typename result_of::begin<Sequence>::type I0;
+            I0 i0 = fusion::begin(seq);
+            typedef typename result_of::next< I0>::type I1; I1 i1 = fusion::next(i0); typedef typename result_of::next< I1>::type I2; I2 i2 = fusion::next(i1); typedef typename result_of::next< I2>::type I3; I3 i3 = fusion::next(i2); typedef typename result_of::next< I3>::type I4; I4 i4 = fusion::next(i3);
+            return vector_data5(*i0 , *i1 , *i2 , *i3 , *i4);
+        }
+        T0 m0; T1 m1; T2 m2; T3 m3; T4 m4;
+    };
+    template <typename T0 , typename T1 , typename T2 , typename T3 , typename T4>
+    struct vector5
+      : vector_data5<T0 , T1 , T2 , T3 , T4>
+      , sequence_base<vector5<T0 , T1 , T2 , T3 , T4> >
+    {
+        typedef vector5<T0 , T1 , T2 , T3 , T4> this_type;
+        typedef vector_data5<T0 , T1 , T2 , T3 , T4> base_type;
+        typedef mpl::vector5<T0 , T1 , T2 , T3 , T4> types;
+        typedef vector_tag fusion_tag;
+        typedef fusion_sequence_tag tag; 
+        typedef mpl::false_ is_view;
+        typedef random_access_traversal_tag category;
+        typedef mpl::int_<5> size;
+        vector5() {}
+        vector5(
+            typename detail::call_param<T0 >::type _0 , typename detail::call_param<T1 >::type _1 , typename detail::call_param<T2 >::type _2 , typename detail::call_param<T3 >::type _3 , typename detail::call_param<T4 >::type _4)
+            : base_type(_0 , _1 , _2 , _3 , _4) {}
+        template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4>
+        vector5(
+            vector5<U0 , U1 , U2 , U3 , U4> const& vec)
+            : base_type(vec.m0 , vec.m1 , vec.m2 , vec.m3 , vec.m4) {}
+        template <typename Sequence>
+        vector5(
+            Sequence const& seq
+            )
+            : base_type(base_type::init_from_sequence(seq)) {}
+        template <typename Sequence>
+        vector5(
+            Sequence& seq
+            )
+            : base_type(base_type::init_from_sequence(seq)) {}
+        template <typename U0 , typename U1 , typename U2 , typename U3 , typename U4>
+        vector5&
+        operator=(vector5<U0 , U1 , U2 , U3 , U4> const& vec)
+        {
[TRUNCATED]

To get the complete diff run:
    svnlook diff /svnroot/boostheaders -r 37


More information about the Boostheaders-commits mailing list