PageRenderTime 25ms CodeModel.GetById 19ms app.highlight 3ms RepoModel.GetById 1ms app.codeStats 0ms

/Src/Dependencies/Boost/boost/spirit/home/phoenix/stl/algorithm/detail/has_equal_range.hpp

http://hadesmem.googlecode.com/
C++ Header | 51 lines | 32 code | 5 blank | 14 comment | 1 complexity | 2a9871fa9caacf6ceb370a65f6056d51 MD5 | raw file
 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// has_equal_range.hpp
12//
13/////////////////////////////////////////////////////////////////////////////
14
15#if defined(_MSC_VER) && _MSC_VER >= 1000
16#pragma once
17#endif
18
19#ifndef HAS_EQUAL_RANGE_EN_14_12_2004
20#define HAS_EQUAL_RANGE_EN_14_12_2004
21
22#include <boost/mpl/or.hpp>
23#include "./is_std_map.hpp"
24#include "./is_std_set.hpp"
25#include "./is_std_hash_map.hpp"
26#include "./is_std_hash_set.hpp"
27
28namespace boost
29{
30    // Specialize this for user-defined types
31    template<typename T>
32    struct has_equal_range
33        : boost::mpl::or_<
34            boost::mpl::or_<
35                is_std_map<T>
36              , is_std_multimap<T>
37              , is_std_set<T>
38              , is_std_multiset<T>
39            >
40          , boost::mpl::or_<
41                is_std_hash_map<T>
42              , is_std_hash_multimap<T>
43              , is_std_hash_set<T>
44              , is_std_hash_multiset<T>
45          >
46        >
47    {
48    };
49}
50
51#endif