Added boost header
This commit is contained in:
71
test/external/boost/bimap/detail/non_unique_views_helper.hpp
vendored
Normal file
71
test/external/boost/bimap/detail/non_unique_views_helper.hpp
vendored
Normal file
@@ -0,0 +1,71 @@
|
||||
// Boost.Bimap
|
||||
//
|
||||
// Copyright (c) 2006-2007 Matias Capeletto
|
||||
//
|
||||
// Distributed under 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)
|
||||
|
||||
/// \file detail/non_unique_views_helper.hpp
|
||||
/// \brief Details for non unique views
|
||||
|
||||
#ifndef BOOST_BIMAP_DETAIL_NON_UNIQUE_VIEWS_HELPER_HPP
|
||||
#define BOOST_BIMAP_DETAIL_NON_UNIQUE_VIEWS_HELPER_HPP
|
||||
|
||||
#if defined(_MSC_VER) && (_MSC_VER>=1200)
|
||||
#pragma once
|
||||
#endif
|
||||
|
||||
#include <boost/config.hpp>
|
||||
|
||||
/*===========================================================================*/
|
||||
#define BOOST_BIMAP_NON_UNIQUE_VIEW_INSERT_FUNCTIONS \
|
||||
\
|
||||
template <class InputIterator> \
|
||||
void insert(InputIterator iterBegin, InputIterator iterEnd) \
|
||||
{ \
|
||||
for( ; iterBegin != iterEnd ; ++iterBegin ) \
|
||||
{ \
|
||||
this->base().insert( \
|
||||
this->template functor< \
|
||||
BOOST_DEDUCED_TYPENAME base_::value_to_base>()( \
|
||||
BOOST_DEDUCED_TYPENAME base_::value_type(*iterBegin)) ); \
|
||||
} \
|
||||
} \
|
||||
\
|
||||
std::pair<BOOST_DEDUCED_TYPENAME base_::iterator, bool> insert( \
|
||||
BOOST_DEDUCED_TYPENAME ::boost::call_traits< \
|
||||
BOOST_DEDUCED_TYPENAME base_::value_type >::param_type x) \
|
||||
{ \
|
||||
typedef BOOST_DEDUCED_TYPENAME base_::base_type::iterator base_iterator; \
|
||||
\
|
||||
std::pair< base_iterator, bool > r( \
|
||||
this->base().insert( \
|
||||
this->template functor< \
|
||||
BOOST_DEDUCED_TYPENAME base_::value_to_base>()(x) ) \
|
||||
); \
|
||||
\
|
||||
return std::pair<typename base_::iterator, bool>( \
|
||||
this->template functor< \
|
||||
BOOST_DEDUCED_TYPENAME base_::iterator_from_base>()(r.first), \
|
||||
r.second \
|
||||
); \
|
||||
} \
|
||||
\
|
||||
BOOST_DEDUCED_TYPENAME base_::iterator insert( \
|
||||
BOOST_DEDUCED_TYPENAME base_::iterator pos, \
|
||||
BOOST_DEDUCED_TYPENAME ::boost::call_traits< \
|
||||
BOOST_DEDUCED_TYPENAME base_::value_type >::param_type x) \
|
||||
{ \
|
||||
return this->template functor< \
|
||||
BOOST_DEDUCED_TYPENAME base_::iterator_from_base>()( \
|
||||
this->base().insert( \
|
||||
this->template functor< \
|
||||
BOOST_DEDUCED_TYPENAME base_::iterator_to_base>()(pos), \
|
||||
this->template functor< \
|
||||
BOOST_DEDUCED_TYPENAME base_::value_to_base>()(x)) \
|
||||
); \
|
||||
}
|
||||
/*===========================================================================*/
|
||||
|
||||
#endif // BOOST_BIMAP_DETAIL_NON_UNIQUE_VIEWS_HELPER_HPP
|
||||
Reference in New Issue
Block a user