1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- // Copyright 2005 Daniel Wallin.
- // Copyright 2005 Joel de Guzman.
- //
- // Use, modification and distribution is subject to 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)
- //
- // Modeled after range_ex, Copyright 2004 Eric Niebler
- ///////////////////////////////////////////////////////////////////////////////
- //
- // has_upper_bound.hpp
- //
- /////////////////////////////////////////////////////////////////////////////
- #ifndef BOOST_PHOENIX_HAS_UPPER_BOUND_EN_14_12_2004
- #define BOOST_PHOENIX_HAS_UPPER_BOUND_EN_14_12_2004
- #include <boost/mpl/or.hpp>
- #include "./is_std_map.hpp"
- #include "./is_std_set.hpp"
- #include "./is_std_hash_map.hpp"
- #include "./is_std_hash_set.hpp"
- namespace boost
- {
- // Specialize this for user-defined types
- template<typename T>
- struct has_upper_bound
- : boost::mpl::or_<
- boost::mpl::or_<
- is_std_map<T>
- , is_std_multimap<T>
- , is_std_set<T>
- , is_std_multiset<T>
- >
- , boost::mpl::or_<
- is_std_hash_map<T>
- , is_std_hash_multimap<T>
- , is_std_hash_set<T>
- , is_std_hash_multiset<T>
- >
- >
- {
- };
- }
- #endif
|