From 71d216b90256936a9638f325af9bc69d720e75de Mon Sep 17 00:00:00 2001 From: DongHun Kwak Date: Thu, 6 Oct 2016 10:30:07 +0900 Subject: Imported Upstream version 1.59.0 Change-Id: I2dde00f4eca71df3eea9d251dcaecde18a6c90a5 Signed-off-by: DongHun Kwak --- boost/fusion/view/nview/detail/nview_impl.hpp | 72 +++------------------------ 1 file changed, 6 insertions(+), 66 deletions(-) (limited to 'boost/fusion/view/nview/detail/nview_impl.hpp') diff --git a/boost/fusion/view/nview/detail/nview_impl.hpp b/boost/fusion/view/nview/detail/nview_impl.hpp index e0d9335638..40674e3551 100644 --- a/boost/fusion/view/nview/detail/nview_impl.hpp +++ b/boost/fusion/view/nview/detail/nview_impl.hpp @@ -1,78 +1,18 @@ /*============================================================================= - Copyright (c) 2009 Hartmut Kaiser + Copyright (c) 2014 Kohei Takahashi 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) ==============================================================================*/ +#ifndef BOOST_FUSION_NVIEW_IMPL_17122014_1948 +#define BOOST_FUSION_NVIEW_IMPL_17122014_1948 -#ifndef BOOST_PP_IS_ITERATING - -#if !defined(BOOST_FUSION_NVIEW_IMPL_SEP_23_2009_1017PM) -#define BOOST_FUSION_NVIEW_IMPL_SEP_23_2009_1017PM - -#include -#include -#include -#include -#include -#include -#include - -#define BOOST_PP_ITERATION_PARAMS_1 \ - (3, (1, FUSION_MAX_VECTOR_SIZE, \ - "boost/fusion/view/nview/detail/nview_impl.hpp")) \ - /**/ +#include /////////////////////////////////////////////////////////////////////////////// -namespace boost { namespace fusion { namespace result_of -{ - template - struct as_nview - { - typedef mpl::vector_c< - int, BOOST_PP_ENUM_PARAMS(FUSION_MAX_VECTOR_SIZE, I) - > index_type; - typedef nview type; - }; -}}} - -#include BOOST_PP_ITERATE() - -#endif - +// Without variadics, we will use the PP version /////////////////////////////////////////////////////////////////////////////// -// Preprocessor vertical repetition code -/////////////////////////////////////////////////////////////////////////////// -#else // defined(BOOST_PP_IS_ITERATING) - -#define N BOOST_PP_ITERATION() +# include -#if N < FUSION_MAX_VECTOR_SIZE -namespace boost { namespace fusion { namespace result_of -{ - template - struct as_nview - { - typedef mpl::vector_c index_type; - typedef nview type; - }; -}}} #endif -namespace boost { namespace fusion -{ - template - BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED - inline nview > - as_nview(Sequence& s) - { - typedef mpl::vector_c index_type; - return nview(s); - } - -}} - -#undef N - -#endif -- cgit v1.2.3