| 123456789101112131415161718192021222324252627282930313233343536 | 
//          Copyright Oliver Kowalke 2018.// 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)#ifndef BOOST_FIBER_DETAIL_EXCHANGE_H#define BOOST_FIBER_DETAIL_EXCHANGE_H#include <algorithm>#include <utility>#include <boost/config.hpp>#ifdef BOOST_HAS_ABI_HEADERS# include BOOST_ABI_PREFIX#endifnamespace boost {namespace fibers {namespace detail {template< typename T, typename U = T >T exchange( T & t, U && nv) {    T ov = std::move( t);    t = std::forward< U >( nv);    return ov;}}}}#ifdef BOOST_HAS_ABI_HEADERS#include BOOST_ABI_SUFFIX#endif#endif // BOOST_FIBER_DETAIL_EXCHANGE_H
 |