/* Copyright 2006-2008 Joaquin M Lopez Munoz. | |
* 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) | |
* | |
* See http://www.boost.org/libs/flyweight for library home page. | |
*/ | |
/* Brute force implementation of perfect forwarding overloads. | |
* Usage: include after having defined the argument macros: | |
* BOOST_FLYWEIGHT_PERFECT_FWD_NAME | |
* BOOST_FLYWEIGHT_PERFECT_FWD_BODY | |
*/ | |
/* This user_definable macro limits the maximum number of arguments to | |
* be perfect forwarded. Beware combinatorial explosion: manual perfect | |
* forwarding for n arguments produces 2^n distinct overloads. | |
*/ | |
#if !defined(BOOST_FLYWEIGHT_LIMIT_PERFECT_FWD_ARGS) | |
#define BOOST_FLYWEIGHT_LIMIT_PERFECT_FWD_ARGS 5 | |
#endif | |
#if BOOST_FLYWEIGHT_LIMIT_PERFECT_FWD_ARGS<=5 | |
#include <boost/flyweight/detail/pp_perfect_fwd.hpp> | |
#else | |
#include <boost/flyweight/detail/dyn_perfect_fwd.hpp> | |
#endif |