Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-30 09:34:56

0001 //////////////////////////////////////////////////////////////////////////////
0002 //
0003 // (C) Copyright Ion Gaztanaga 2015-2015. Distributed under the Boost
0004 // Software License, Version 1.0. (See accompanying file
0005 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
0006 //
0007 // See http://www.boost.org/libs/container for documentation.
0008 //
0009 //////////////////////////////////////////////////////////////////////////////
0010 
0011 #ifndef BOOST_CONTAINER_PMR_MAP_HPP
0012 #define BOOST_CONTAINER_PMR_MAP_HPP
0013 
0014 #if defined (_MSC_VER)
0015 #  pragma once 
0016 #endif
0017 
0018 #include <boost/container/map.hpp>
0019 #include <boost/container/pmr/polymorphic_allocator.hpp>
0020 
0021 namespace boost {
0022 namespace container {
0023 namespace pmr {
0024 
0025 #if !defined(BOOST_NO_CXX11_TEMPLATE_ALIASES)
0026 
0027 template <class Key
0028          ,class T
0029          ,class Compare  = std::less<Key>
0030          ,class Options = void >
0031 using map = boost::container::map<Key, T, Compare, polymorphic_allocator<std::pair<const Key, T> >, Options>;
0032 
0033 template <class Key
0034          ,class T
0035          ,class Compare  = std::less<Key>
0036          ,class Options = void >
0037 using multimap = boost::container::multimap<Key, T, Compare, polymorphic_allocator<std::pair<const Key, T> >, Options>;
0038 
0039 #endif
0040 
0041 //! A portable metafunction to obtain a map
0042 //! that uses a polymorphic allocator
0043 template <class Key
0044          ,class T
0045          ,class Compare  = std::less<Key>
0046          ,class Options = void >
0047 struct map_of
0048 {
0049    typedef boost::container::map<Key, T, Compare, polymorphic_allocator<std::pair<const Key, T> >, Options> type;
0050 };
0051 
0052 //! A portable metafunction to obtain a multimap
0053 //! that uses a polymorphic allocator
0054 template <class Key
0055          ,class T
0056          ,class Compare  = std::less<Key>
0057          ,class Options = void >
0058 struct multimap_of
0059 {
0060    typedef boost::container::multimap<Key, T, Compare, polymorphic_allocator<std::pair<const Key, T> >, Options> type;
0061 };
0062 
0063 }  //namespace pmr {
0064 }  //namespace container {
0065 }  //namespace boost {
0066 
0067 #endif   //BOOST_CONTAINER_PMR_MAP_HPP