70 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			70 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
|   | /*============================================================================= | ||
|  |     Copyright (c) 2005-2012 Joel de Guzman | ||
|  |     Copyright (c) 2005-2006 Dan Marsden | ||
|  | 
 | ||
|  |     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(BOOST_PP_IS_ITERATING) | ||
|  | #if !defined(BOOST_FUSION_SEQUENCE_DEQUE_DETAIL_DEQUE_FORWARD_CTOR_04122006_2212) | ||
|  | #define BOOST_FUSION_SEQUENCE_DEQUE_DETAIL_DEQUE_FORWARD_CTOR_04122006_2212 | ||
|  | 
 | ||
|  | #if defined(BOOST_FUSION_HAS_VARIADIC_DEQUE) | ||
|  | #error "C++03 only! This file should not have been included" | ||
|  | #endif | ||
|  | 
 | ||
|  | #define FUSION_DEQUE_FORWARD_CTOR_FORWARD(z, n, _)    BOOST_FUSION_FWD_ELEM(T_##n, t##n) | ||
|  | 
 | ||
|  | #include <boost/preprocessor/iterate.hpp> | ||
|  | #include <boost/preprocessor/repetition/enum_shifted_params.hpp> | ||
|  | #include <boost/preprocessor/repetition/enum_binary_params.hpp> | ||
|  | 
 | ||
|  | #define BOOST_PP_FILENAME_1 \ | ||
|  |     <boost/fusion/container/deque/detail/cpp03/deque_forward_ctor.hpp> | ||
|  | #define BOOST_PP_ITERATION_LIMITS (2, FUSION_MAX_DEQUE_SIZE) | ||
|  | #include BOOST_PP_ITERATE() | ||
|  | 
 | ||
|  | #undef FUSION_DEQUE_FORWARD_CTOR_FORWARD | ||
|  | #endif | ||
|  | #else | ||
|  | 
 | ||
|  | #define N BOOST_PP_ITERATION() | ||
|  | 
 | ||
|  | #if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES) | ||
|  | FUSION_HASH if defined(BOOST_NO_CXX11_RVALUE_REFERENCES) | ||
|  | #endif | ||
|  | #if defined(BOOST_NO_CXX11_RVALUE_REFERENCES) || \ | ||
|  |     (defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES)) | ||
|  | BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED | ||
|  | deque(BOOST_PP_ENUM_BINARY_PARAMS(N, typename detail::call_param<T, >::type t)) | ||
|  |     : base(detail::deque_keyed_values<BOOST_PP_ENUM_PARAMS(N, T)>::construct(BOOST_PP_ENUM_PARAMS(N, t))) | ||
|  | {} | ||
|  | #endif | ||
|  | #if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES) | ||
|  | FUSION_HASH endif | ||
|  | #endif | ||
|  | 
 | ||
|  | #if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES) | ||
|  | FUSION_HASH if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) | ||
|  | #endif | ||
|  | #if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) || \ | ||
|  |     (defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES)) | ||
|  | BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED | ||
|  | deque(BOOST_PP_ENUM_BINARY_PARAMS(N, T, const& t)) | ||
|  |     : base(detail::deque_keyed_values<BOOST_PP_ENUM_PARAMS(N, T)>::construct(BOOST_PP_ENUM_PARAMS(N, t))) | ||
|  | {} | ||
|  | 
 | ||
|  | template <BOOST_PP_ENUM_PARAMS(N, typename T_)> | ||
|  | BOOST_CXX14_CONSTEXPR BOOST_FUSION_GPU_ENABLED | ||
|  | deque(BOOST_PP_ENUM_BINARY_PARAMS(N, T_, && t)) | ||
|  |     : base(detail::deque_keyed_values<BOOST_PP_ENUM_PARAMS(N, T)>:: | ||
|  |       forward_(BOOST_PP_ENUM(N, FUSION_DEQUE_FORWARD_CTOR_FORWARD, _))) | ||
|  | {} | ||
|  | #endif | ||
|  | #if defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES) | ||
|  | FUSION_HASH endif | ||
|  | #endif | ||
|  | 
 | ||
|  | #undef N | ||
|  | #endif |