deque_fwd.hpp 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. /*=============================================================================
  2. Copyright (c) 2005-2012 Joel de Guzman
  3. Copyright (c) 2005-2007 Dan Marsden
  4. Distributed under the Boost Software License, Version 1.0. (See accompanying
  5. file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  6. ==============================================================================*/
  7. #if !defined(FUSION_DEQUE_FORWARD_02092007_0749)
  8. #define FUSION_DEQUE_FORWARD_02092007_0749
  9. #include <boost/fusion/support/config.hpp>
  10. #include <boost/config.hpp>
  11. #if (defined(BOOST_NO_CXX11_VARIADIC_TEMPLATES) \
  12. || defined(BOOST_NO_CXX11_FUNCTION_TEMPLATE_DEFAULT_ARGS)) \
  13. || (defined(__WAVE__) && defined(BOOST_FUSION_CREATE_PREPROCESSED_FILES))
  14. # if defined(BOOST_FUSION_HAS_VARIADIC_DEQUE)
  15. # undef BOOST_FUSION_HAS_VARIADIC_DEQUE
  16. # endif
  17. #else
  18. # if !defined(BOOST_FUSION_HAS_VARIADIC_DEQUE)
  19. # define BOOST_FUSION_HAS_VARIADIC_DEQUE
  20. # endif
  21. #endif
  22. #if BOOST_WORKAROUND(BOOST_MSVC, < 1910)
  23. # if defined(BOOST_FUSION_HAS_VARIADIC_DEQUE)
  24. # undef BOOST_FUSION_HAS_VARIADIC_DEQUE
  25. # endif
  26. #endif
  27. ///////////////////////////////////////////////////////////////////////////////
  28. // With no variadics, we will use the C++03 version
  29. ///////////////////////////////////////////////////////////////////////////////
  30. #if !defined(BOOST_FUSION_HAS_VARIADIC_DEQUE)
  31. # include <boost/fusion/container/deque/detail/cpp03/deque_fwd.hpp>
  32. #else
  33. ///////////////////////////////////////////////////////////////////////////////
  34. // C++11 interface
  35. ///////////////////////////////////////////////////////////////////////////////
  36. namespace boost { namespace fusion
  37. {
  38. template <typename ...T>
  39. struct deque;
  40. }}
  41. #endif
  42. #endif