![]() System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, Directory : /usr/include/boost/bimap/detail/ |
Upload File : |
// 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) #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