tuple.hpp 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. // Copyright (C) 2013 Vicente J. Botet Escriba
  2. //
  3. // Distributed under the Boost Software License, Version 1.0. (See accompanying
  4. // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  5. //
  6. // 2013/10 Vicente J. Botet Escriba
  7. // Creation.
  8. #ifndef BOOST_CSBL_TUPLE_HPP
  9. #define BOOST_CSBL_TUPLE_HPP
  10. #include <boost/config.hpp>
  11. #if defined BOOST_THREAD_USES_BOOST_TUPLE || defined BOOST_NO_CXX11_HDR_TUPLE || defined BOOST_NO_CXX11_RVALUE_REFERENCES
  12. #include <boost/tuple/tuple.hpp>
  13. #ifndef BOOST_THREAD_USES_BOOST_TUPLE
  14. #define BOOST_THREAD_USES_BOOST_TUPLE
  15. #endif
  16. #else
  17. #include <tuple>
  18. #endif
  19. namespace boost
  20. {
  21. namespace csbl
  22. {
  23. #if defined BOOST_THREAD_USES_BOOST_TUPLE
  24. using ::boost::tuple;
  25. using ::boost::get;
  26. using ::boost::make_tuple;
  27. //using ::boost::tuple_size;
  28. #else
  29. // 20.4.2, class template tuple:
  30. using ::std::tuple;
  31. using ::std::get;
  32. using ::std::make_tuple;
  33. using ::std::tuple_size;
  34. // 20.4.2.4, tuple creation functions:
  35. // 20.4.2.5, tuple helper classes:
  36. // 20.4.2.6, element access:
  37. // 20.4.2.7, relational operators:
  38. // 20.4.2.8, allocator-related traits
  39. // 20.4.2.9, specialized algorithms:
  40. #endif
  41. }
  42. }
  43. #endif // header