// Boost.Assign library // // Copyright Thorsten Ottosen 2003-2004. 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) // // For more information, see http://www.boost.org/libs/assign/ // #ifndef BOOST_ASSIGN_STD_VECTOR_HPP #define BOOST_ASSIGN_STD_VECTOR_HPP #if defined(_MSC_VER) # pragma once #endif #include #include #include #include namespace boost { namespace assign { #if defined(BOOST_NO_CXX11_RVALUE_REFERENCES) template< class V, class A, class V2 > inline list_inserter< assign_detail::call_push_back< std::vector >, V > operator+=( std::vector& c, V2 v ) { return push_back( c )( v ); } #else template< class V, class A, class V2 > inline list_inserter< assign_detail::call_push_back< std::vector >, V > operator+=( std::vector& c, V2&& v ) { return push_back( c )( std::forward(v) ); } #endif } } #endif