is_std_set.hpp 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. // Copyright 2005 Daniel Wallin.
  2. // Copyright 2005 Joel de Guzman.
  3. //
  4. // Use, modification and distribution is subject to the Boost Software
  5. // License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
  6. // http://www.boost.org/LICENSE_1_0.txt)
  7. //
  8. // Modeled after range_ex, Copyright 2004 Eric Niebler
  9. ///////////////////////////////////////////////////////////////////////////////
  10. //
  11. // is_std_set.hpp
  12. //
  13. /////////////////////////////////////////////////////////////////////////////
  14. #if defined(_MSC_VER)
  15. # pragma once
  16. #endif
  17. #ifndef BOOST_PHOENIX_IS_STD_SET_EN_16_12_2004
  18. #define BOOST_PHOENIX_IS_STD_SET_EN_16_12_2004
  19. #include <boost/mpl/bool.hpp>
  20. #include <set>
  21. namespace boost
  22. {
  23. template<class T>
  24. struct is_std_set
  25. : boost::mpl::false_
  26. {};
  27. template<
  28. class Kty
  29. , class Pr
  30. , class Alloc
  31. >
  32. struct is_std_set< ::std::set<Kty,Pr,Alloc> >
  33. : boost::mpl::true_
  34. {};
  35. template<class T>
  36. struct is_std_multiset
  37. : boost::mpl::false_
  38. {};
  39. template<
  40. class Kty
  41. , class Pr
  42. , class Alloc
  43. >
  44. struct is_std_multiset< ::std::multiset<Kty,Pr,Alloc> >
  45. : boost::mpl::true_
  46. {};
  47. }
  48. #endif