/usr/include/boost/fusion/container/vector/detail/cpp03/preprocessed
Edit: /usr/include/boost/fusion/container/vector/detail/cpp03/preprocessed/vector10.hpp (104754B)
/*=============================================================================
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 vector_tag;
struct fusion_sequence_tag;
struct random_access_traversal_tag;
template
struct vector_data1
{
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector_data1()
: m0() {}
# if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector_data1(U0 && arg0
, typename boost::enable_if >::type* = 0
)
: m0(std::forward( arg0)) {}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector_data1(
vector_data1&& other)
: m0(std::forward( other.m0)) {}
# endif
# if !defined(BOOST_CLANG)
BOOST_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector_data1(
typename detail::call_param::type arg0)
: m0(arg0) {}
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector_data1(
vector_data1 const& other)
: m0(other.m0) {}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector_data1&
operator=(vector_data1 const& vec)
{
this->m0 = vec.m0;
return *this;
}
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
static vector_data1
init_from_sequence(Sequence const& seq)
{
typedef typename result_of::begin::type I0;
I0 i0 = fusion::begin(seq);
return vector_data1(*i0);
}
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
static vector_data1
init_from_sequence(Sequence& seq)
{
typedef typename result_of::begin::type I0;
I0 i0 = fusion::begin(seq);
return vector_data1(*i0);
}
T0 m0;
};
template
struct vector1
: vector_data1
, sequence_base >
{
typedef vector1 this_type;
typedef vector_data1 base_type;
typedef mpl::vector1 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;
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector1() {}
# if !defined(BOOST_CLANG)
BOOST_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
explicit
vector1(
typename detail::call_param::type arg0)
: base_type(arg0) {}
# if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
explicit
vector1(U0&& _0
, typename boost::enable_if >::type* = 0
)
: base_type(std::forward( _0)) {}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector1(vector1&& rhs)
: base_type(std::forward(rhs)) {}
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector1(vector1 const& rhs)
: base_type(static_cast(rhs)) {}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector1&
operator=(vector1 const& vec)
{
base_type::operator=(vec);
return *this;
}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector1&
operator=(vector1&& vec)
{
this->m0 = std::forward< T0>(vec.m0);
return *this;
}
# endif
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector1(
vector1 const& vec)
: base_type(vec.m0) {}
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector1(
Sequence const& seq
, typename boost::enable_if >::type* = 0
, typename boost::disable_if >::type* = 0
)
: base_type(base_type::init_from_sequence(seq)) {}
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector1(
Sequence& seq
, typename boost::enable_if >::type* = 0
, typename boost::disable_if >::type* = 0
)
: base_type(base_type::init_from_sequence(seq)) {}
template
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector1&
operator=(vector1 const& vec)
{
this->m0 = vec.m0;
return *this;
}
template
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
typename boost::disable_if, this_type&>::type
operator=(Sequence const& seq)
{
typedef typename result_of::begin::type I0;
I0 i0 = fusion::begin(seq);
this->m0 = *i0;
return *this;
}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED typename add_reference::type at_impl(mpl::int_<0>) { return this->m0; } BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED typename add_reference::type>::type at_impl(mpl::int_<0>) const { return this->m0; }
template
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
typename add_reference::type>::type
at_impl(I)
{
return this->at_impl(mpl::int_());
}
template
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
typename add_reference::type>::type>::type
at_impl(I) const
{
return this->at_impl(mpl::int_());
}
};
template
struct vector_data2
{
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector_data2()
: m0() , m1() {}
# if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector_data2(U0 && arg0 , U1 && arg1
, typename boost::enable_if >::type* = 0
)
: m0(std::forward( arg0)) , m1(std::forward( arg1)) {}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector_data2(
vector_data2&& other)
: m0(std::forward( other.m0)) , m1(std::forward( other.m1)) {}
# endif
# if !defined(BOOST_CLANG)
BOOST_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector_data2(
typename detail::call_param::type arg0 , typename detail::call_param::type arg1)
: m0(arg0) , m1(arg1) {}
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector_data2(
vector_data2 const& other)
: m0(other.m0) , m1(other.m1) {}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector_data2&
operator=(vector_data2 const& vec)
{
this->m0 = vec.m0; this->m1 = vec.m1;
return *this;
}
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
static vector_data2
init_from_sequence(Sequence const& seq)
{
typedef typename result_of::begin::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
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
static vector_data2
init_from_sequence(Sequence& seq)
{
typedef typename result_of::begin::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
struct vector2
: vector_data2
, sequence_base >
{
typedef vector2 this_type;
typedef vector_data2 base_type;
typedef mpl::vector2 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;
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector2() {}
# if !defined(BOOST_CLANG)
BOOST_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector2(
typename detail::call_param::type arg0 , typename detail::call_param::type arg1)
: base_type(arg0 , arg1) {}
# if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector2(U0 && arg0 , U1 && arg1)
: base_type(std::forward( arg0) , std::forward( arg1)) {}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector2(vector2&& rhs)
: base_type(std::forward(rhs)) {}
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector2(vector2 const& rhs)
: base_type(static_cast(rhs)) {}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector2&
operator=(vector2 const& vec)
{
base_type::operator=(vec);
return *this;
}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector2&
operator=(vector2&& vec)
{
this->m0 = std::forward< T0>(vec.m0); this->m1 = std::forward< T1>(vec.m1);
return *this;
}
# endif
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector2(
vector2 const& vec)
: base_type(vec.m0 , vec.m1) {}
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector2(
Sequence const& seq
, typename boost::enable_if >::type* = 0
)
: base_type(base_type::init_from_sequence(seq)) {}
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector2(
Sequence& seq
, typename boost::enable_if >::type* = 0
)
: base_type(base_type::init_from_sequence(seq)) {}
template
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector2&
operator=(vector2 const& vec)
{
this->m0 = vec.m0; this->m1 = vec.m1;
return *this;
}
template
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
typename boost::disable_if, this_type&>::type
operator=(Sequence const& seq)
{
typedef typename result_of::begin::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;
}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED typename add_reference::type at_impl(mpl::int_<0>) { return this->m0; } BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED typename add_reference::type>::type at_impl(mpl::int_<0>) const { return this->m0; } BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED typename add_reference::type at_impl(mpl::int_<1>) { return this->m1; } BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED typename add_reference::type>::type at_impl(mpl::int_<1>) const { return this->m1; }
template
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
typename add_reference::type>::type
at_impl(I)
{
return this->at_impl(mpl::int_());
}
template
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
typename add_reference::type>::type>::type
at_impl(I) const
{
return this->at_impl(mpl::int_());
}
};
template
struct vector_data3
{
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector_data3()
: m0() , m1() , m2() {}
# if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector_data3(U0 && arg0 , U1 && arg1 , U2 && arg2
, typename boost::enable_if >::type* = 0
)
: m0(std::forward( arg0)) , m1(std::forward( arg1)) , m2(std::forward( arg2)) {}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector_data3(
vector_data3&& other)
: m0(std::forward( other.m0)) , m1(std::forward( other.m1)) , m2(std::forward( other.m2)) {}
# endif
# if !defined(BOOST_CLANG)
BOOST_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector_data3(
typename detail::call_param::type arg0 , typename detail::call_param::type arg1 , typename detail::call_param::type arg2)
: m0(arg0) , m1(arg1) , m2(arg2) {}
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector_data3(
vector_data3 const& other)
: m0(other.m0) , m1(other.m1) , m2(other.m2) {}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector_data3&
operator=(vector_data3 const& vec)
{
this->m0 = vec.m0; this->m1 = vec.m1; this->m2 = vec.m2;
return *this;
}
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
static vector_data3
init_from_sequence(Sequence const& seq)
{
typedef typename result_of::begin::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
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
static vector_data3
init_from_sequence(Sequence& seq)
{
typedef typename result_of::begin::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
struct vector3
: vector_data3
, sequence_base >
{
typedef vector3 this_type;
typedef vector_data3 base_type;
typedef mpl::vector3 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;
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector3() {}
# if !defined(BOOST_CLANG)
BOOST_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector3(
typename detail::call_param::type arg0 , typename detail::call_param::type arg1 , typename detail::call_param::type arg2)
: base_type(arg0 , arg1 , arg2) {}
# if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector3(U0 && arg0 , U1 && arg1 , U2 && arg2)
: base_type(std::forward( arg0) , std::forward( arg1) , std::forward( arg2)) {}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector3(vector3&& rhs)
: base_type(std::forward(rhs)) {}
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector3(vector3 const& rhs)
: base_type(static_cast(rhs)) {}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector3&
operator=(vector3 const& vec)
{
base_type::operator=(vec);
return *this;
}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector3&
operator=(vector3&& vec)
{
this->m0 = std::forward< T0>(vec.m0); this->m1 = std::forward< T1>(vec.m1); this->m2 = std::forward< T2>(vec.m2);
return *this;
}
# endif
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector3(
vector3 const& vec)
: base_type(vec.m0 , vec.m1 , vec.m2) {}
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector3(
Sequence const& seq
, typename boost::enable_if >::type* = 0
)
: base_type(base_type::init_from_sequence(seq)) {}
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector3(
Sequence& seq
, typename boost::enable_if >::type* = 0
)
: base_type(base_type::init_from_sequence(seq)) {}
template
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector3&
operator=(vector3 const& vec)
{
this->m0 = vec.m0; this->m1 = vec.m1; this->m2 = vec.m2;
return *this;
}
template
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
typename boost::disable_if, this_type&>::type
operator=(Sequence const& seq)
{
typedef typename result_of::begin::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;
}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED typename add_reference::type at_impl(mpl::int_<0>) { return this->m0; } BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED typename add_reference::type>::type at_impl(mpl::int_<0>) const { return this->m0; } BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED typename add_reference::type at_impl(mpl::int_<1>) { return this->m1; } BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED typename add_reference::type>::type at_impl(mpl::int_<1>) const { return this->m1; } BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED typename add_reference::type at_impl(mpl::int_<2>) { return this->m2; } BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED typename add_reference::type>::type at_impl(mpl::int_<2>) const { return this->m2; }
template
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
typename add_reference::type>::type
at_impl(I)
{
return this->at_impl(mpl::int_());
}
template
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
typename add_reference::type>::type>::type
at_impl(I) const
{
return this->at_impl(mpl::int_());
}
};
template
struct vector_data4
{
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector_data4()
: m0() , m1() , m2() , m3() {}
# if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector_data4(U0 && arg0 , U1 && arg1 , U2 && arg2 , U3 && arg3
, typename boost::enable_if >::type* = 0
)
: m0(std::forward( arg0)) , m1(std::forward( arg1)) , m2(std::forward( arg2)) , m3(std::forward( arg3)) {}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector_data4(
vector_data4&& other)
: m0(std::forward( other.m0)) , m1(std::forward( other.m1)) , m2(std::forward( other.m2)) , m3(std::forward( other.m3)) {}
# endif
# if !defined(BOOST_CLANG)
BOOST_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector_data4(
typename detail::call_param::type arg0 , typename detail::call_param::type arg1 , typename detail::call_param::type arg2 , typename detail::call_param::type arg3)
: m0(arg0) , m1(arg1) , m2(arg2) , m3(arg3) {}
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector_data4(
vector_data4 const& other)
: m0(other.m0) , m1(other.m1) , m2(other.m2) , m3(other.m3) {}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
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
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
static vector_data4
init_from_sequence(Sequence const& seq)
{
typedef typename result_of::begin::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
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
static vector_data4
init_from_sequence(Sequence& seq)
{
typedef typename result_of::begin::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
struct vector4
: vector_data4
, sequence_base >
{
typedef vector4 this_type;
typedef vector_data4 base_type;
typedef mpl::vector4 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;
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector4() {}
# if !defined(BOOST_CLANG)
BOOST_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector4(
typename detail::call_param::type arg0 , typename detail::call_param::type arg1 , typename detail::call_param::type arg2 , typename detail::call_param::type arg3)
: base_type(arg0 , arg1 , arg2 , arg3) {}
# if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector4(U0 && arg0 , U1 && arg1 , U2 && arg2 , U3 && arg3)
: base_type(std::forward( arg0) , std::forward( arg1) , std::forward( arg2) , std::forward( arg3)) {}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector4(vector4&& rhs)
: base_type(std::forward(rhs)) {}
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector4(vector4 const& rhs)
: base_type(static_cast(rhs)) {}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector4&
operator=(vector4 const& vec)
{
base_type::operator=(vec);
return *this;
}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector4&
operator=(vector4&& vec)
{
this->m0 = std::forward< T0>(vec.m0); this->m1 = std::forward< T1>(vec.m1); this->m2 = std::forward< T2>(vec.m2); this->m3 = std::forward< T3>(vec.m3);
return *this;
}
# endif
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector4(
vector4 const& vec)
: base_type(vec.m0 , vec.m1 , vec.m2 , vec.m3) {}
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector4(
Sequence const& seq
, typename boost::enable_if >::type* = 0
)
: base_type(base_type::init_from_sequence(seq)) {}
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector4(
Sequence& seq
, typename boost::enable_if >::type* = 0
)
: base_type(base_type::init_from_sequence(seq)) {}
template
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector4&
operator=(vector4 const& vec)
{
this->m0 = vec.m0; this->m1 = vec.m1; this->m2 = vec.m2; this->m3 = vec.m3;
return *this;
}
template
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
typename boost::disable_if, this_type&>::type
operator=(Sequence const& seq)
{
typedef typename result_of::begin::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;
}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED typename add_reference::type at_impl(mpl::int_<0>) { return this->m0; } BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED typename add_reference::type>::type at_impl(mpl::int_<0>) const { return this->m0; } BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED typename add_reference::type at_impl(mpl::int_<1>) { return this->m1; } BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED typename add_reference::type>::type at_impl(mpl::int_<1>) const { return this->m1; } BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED typename add_reference::type at_impl(mpl::int_<2>) { return this->m2; } BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED typename add_reference::type>::type at_impl(mpl::int_<2>) const { return this->m2; } BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED typename add_reference::type at_impl(mpl::int_<3>) { return this->m3; } BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED typename add_reference::type>::type at_impl(mpl::int_<3>) const { return this->m3; }
template
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
typename add_reference::type>::type
at_impl(I)
{
return this->at_impl(mpl::int_());
}
template
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
typename add_reference::type>::type>::type
at_impl(I) const
{
return this->at_impl(mpl::int_());
}
};
template
struct vector_data5
{
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector_data5()
: m0() , m1() , m2() , m3() , m4() {}
# if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector_data5(U0 && arg0 , U1 && arg1 , U2 && arg2 , U3 && arg3 , U4 && arg4
, typename boost::enable_if >::type* = 0
)
: m0(std::forward( arg0)) , m1(std::forward( arg1)) , m2(std::forward( arg2)) , m3(std::forward( arg3)) , m4(std::forward( arg4)) {}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector_data5(
vector_data5&& other)
: m0(std::forward( other.m0)) , m1(std::forward( other.m1)) , m2(std::forward( other.m2)) , m3(std::forward( other.m3)) , m4(std::forward( other.m4)) {}
# endif
# if !defined(BOOST_CLANG)
BOOST_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector_data5(
typename detail::call_param::type arg0 , typename detail::call_param::type arg1 , typename detail::call_param::type arg2 , typename detail::call_param::type arg3 , typename detail::call_param::type arg4)
: m0(arg0) , m1(arg1) , m2(arg2) , m3(arg3) , m4(arg4) {}
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector_data5(
vector_data5 const& other)
: m0(other.m0) , m1(other.m1) , m2(other.m2) , m3(other.m3) , m4(other.m4) {}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
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
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
static vector_data5
init_from_sequence(Sequence const& seq)
{
typedef typename result_of::begin::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
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
static vector_data5
init_from_sequence(Sequence& seq)
{
typedef typename result_of::begin::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
struct vector5
: vector_data5
, sequence_base >
{
typedef vector5 this_type;
typedef vector_data5 base_type;
typedef mpl::vector5 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;
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector5() {}
# if !defined(BOOST_CLANG)
BOOST_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector5(
typename detail::call_param::type arg0 , typename detail::call_param::type arg1 , typename detail::call_param::type arg2 , typename detail::call_param::type arg3 , typename detail::call_param::type arg4)
: base_type(arg0 , arg1 , arg2 , arg3 , arg4) {}
# if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES)
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector5(U0 && arg0 , U1 && arg1 , U2 && arg2 , U3 && arg3 , U4 && arg4)
: base_type(std::forward( arg0) , std::forward( arg1) , std::forward( arg2) , std::forward( arg3) , std::forward( arg4)) {}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector5(vector5&& rhs)
: base_type(std::forward(rhs)) {}
BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector5(vector5 const& rhs)
: base_type(static_cast(rhs)) {}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector5&
operator=(vector5 const& vec)
{
base_type::operator=(vec);
return *this;
}
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector5&
operator=(vector5&& vec)
{
this->m0 = std::forward< T0>(vec.m0); this->m1 = std::forward< T1>(vec.m1); this->m2 = std::forward< T2>(vec.m2); this->m3 = std::forward< T3>(vec.m3); this->m4 = std::forward< T4>(vec.m4);
return *this;
}
# endif
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector5(
vector5 const& vec)
: base_type(vec.m0 , vec.m1 , vec.m2 , vec.m3 , vec.m4) {}
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector5(
Sequence const& seq
, typename boost::enable_if >::type* = 0
)
: base_type(base_type::init_from_sequence(seq)) {}
template
# if !defined(BOOST_CLANG)
BOOST_CXX14_CONSTEXPR
# endif
BOOST_FUSION_GPU_ENABLED
vector5(
Sequence& seq
, typename boost::enable_if >::type* = 0
)
: base_type(base_type::init_from_sequence(seq)) {}
template
BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED
vector5&
operator=(vector5