59 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			59 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| 
								 | 
							
								//-----------------------------------------------------------------------------
							 | 
						||
| 
								 | 
							
								// boost variant/detail/substitute_fwd.hpp header file
							 | 
						||
| 
								 | 
							
								// See http://www.boost.org for updates, documentation, and revision history.
							 | 
						||
| 
								 | 
							
								//-----------------------------------------------------------------------------
							 | 
						||
| 
								 | 
							
								//
							 | 
						||
| 
								 | 
							
								// Copyright (c) 2003
							 | 
						||
| 
								 | 
							
								// Eric Friedman
							 | 
						||
| 
								 | 
							
								//
							 | 
						||
| 
								 | 
							
								// 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_VARIANT_DETAIL_SUBSTITUTE_FWD_HPP
							 | 
						||
| 
								 | 
							
								#define BOOST_VARIANT_DETAIL_SUBSTITUTE_FWD_HPP
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#include <boost/mpl/aux_/lambda_arity_param.hpp>
							 | 
						||
| 
								 | 
							
								#include <boost/mpl/aux_/template_arity.hpp>
							 | 
						||
| 
								 | 
							
								#include <boost/mpl/int_fwd.hpp>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								///////////////////////////////////////////////////////////////////////////////
							 | 
						||
| 
								 | 
							
								// BOOST_VARIANT_DETAIL_NO_SUBSTITUTE
							 | 
						||
| 
								 | 
							
								//
							 | 
						||
| 
								 | 
							
								// Defined if 'substitute' is not implementable on the current compiler.
							 | 
						||
| 
								 | 
							
								//
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#include <boost/mpl/aux_/config/ctps.hpp>
							 | 
						||
| 
								 | 
							
								#include <boost/mpl/aux_/config/ttp.hpp>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#if defined(BOOST_NO_TEMPLATE_TEMPLATE_PARAMETERS) \
							 | 
						||
| 
								 | 
							
								 && !defined(BOOST_VARIANT_DETAIL_NO_SUBSTITUTE)
							 | 
						||
| 
								 | 
							
								#   define BOOST_VARIANT_DETAIL_NO_SUBSTITUTE
							 | 
						||
| 
								 | 
							
								#endif
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								namespace boost {
							 | 
						||
| 
								 | 
							
								namespace detail { namespace variant {
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#if !defined(BOOST_VARIANT_DETAIL_NO_SUBSTITUTE)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								///////////////////////////////////////////////////////////////////////////////
							 | 
						||
| 
								 | 
							
								// metafunction substitute
							 | 
						||
| 
								 | 
							
								//
							 | 
						||
| 
								 | 
							
								// Substitutes one type for another in the given type expression.
							 | 
						||
| 
								 | 
							
								//
							 | 
						||
| 
								 | 
							
								template <
							 | 
						||
| 
								 | 
							
								      typename T, typename Dest, typename Source
							 | 
						||
| 
								 | 
							
								      BOOST_MPL_AUX_LAMBDA_ARITY_PARAM(
							 | 
						||
| 
								 | 
							
								          typename Arity = mpl::int_< mpl::aux::template_arity<T>::value >
							 | 
						||
| 
								 | 
							
								        )
							 | 
						||
| 
								 | 
							
								    >
							 | 
						||
| 
								 | 
							
								struct substitute;
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#endif // !defined(BOOST_VARIANT_DETAIL_NO_SUBSTITUTE)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								}} // namespace detail::variant
							 | 
						||
| 
								 | 
							
								} // namespace boost
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#endif // BOOST_VARIANT_DETAIL_SUBSTITUTE_FWD_HPP
							 |