diff options
Diffstat (limited to 'boost/coroutine2/detail/push_control_block_ecv1.hpp')
-rw-r--r-- | boost/coroutine2/detail/push_control_block_ecv1.hpp | 111 |
1 files changed, 0 insertions, 111 deletions
diff --git a/boost/coroutine2/detail/push_control_block_ecv1.hpp b/boost/coroutine2/detail/push_control_block_ecv1.hpp deleted file mode 100644 index 29d49716a7..0000000000 --- a/boost/coroutine2/detail/push_control_block_ecv1.hpp +++ /dev/null @@ -1,111 +0,0 @@ - -// Copyright Oliver Kowalke 2014. -// 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_COROUTINES2_DETAIL_PUSH_CONTROL_BLOCK_HPP -#define BOOST_COROUTINES2_DETAIL_PUSH_CONTROL_BLOCK_HPP - -#include <functional> -#include <exception> - -#include <boost/config.hpp> -#include <boost/context/execution_context.hpp> - -#include <boost/coroutine2/detail/state.hpp> - -#ifdef BOOST_HAS_ABI_HEADERS -# include BOOST_ABI_PREFIX -#endif - -namespace boost { -namespace coroutines2 { -namespace detail { - -template< typename T > -struct push_coroutine< T >::control_block { - boost::context::execution_context ctx; - typename pull_coroutine< T >::control_block * other; - state_t state; - std::exception_ptr except; - - static void destroy( control_block * cb) noexcept; - - template< typename StackAllocator, typename Fn > - control_block( context::preallocated, StackAllocator, Fn &&); - - control_block( typename pull_coroutine< T >::control_block *, boost::context::execution_context const&) noexcept; - - ~control_block() noexcept; - - control_block( control_block &) = delete; - control_block & operator=( control_block &) = delete; - - void deallocate() noexcept; - - void resume( T const&); - - void resume( T &&); - - bool valid() const noexcept; -}; - -template< typename T > -struct push_coroutine< T & >::control_block { - boost::context::execution_context ctx; - typename pull_coroutine< T & >::control_block * other; - state_t state; - std::exception_ptr except; - - static void destroy( control_block * cb) noexcept; - - template< typename StackAllocator, typename Fn > - control_block( context::preallocated, StackAllocator, Fn &&); - - control_block( typename pull_coroutine< T & >::control_block *, boost::context::execution_context const&) noexcept; - - ~control_block() noexcept; - - control_block( control_block &) = delete; - control_block & operator=( control_block &) = delete; - - void deallocate() noexcept; - - void resume( T &); - - bool valid() const noexcept; -}; - -struct push_coroutine< void >::control_block { - boost::context::execution_context ctx; - pull_coroutine< void >::control_block * other; - state_t state; - std::exception_ptr except; - - static void destroy( control_block * cb) noexcept; - - template< typename StackAllocator, typename Fn > - control_block( context::preallocated, StackAllocator, Fn &&); - - control_block( pull_coroutine< void >::control_block *, boost::context::execution_context const&) noexcept; - - ~control_block() noexcept; - - control_block( control_block &) = delete; - control_block & operator=( control_block &) = delete; - - void deallocate() noexcept; - - void resume(); - - bool valid() const noexcept; -}; - -}}} - -#ifdef BOOST_HAS_ABI_HEADERS -# include BOOST_ABI_SUFFIX -#endif - -#endif // BOOST_COROUTINES2_DETAIL_PUSH_CONTROL_BLOCK_HPP |