Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

Class asymmetric_coroutine<>::push_type

Boost , Chapter 1. Coroutine , Asymmetric coroutine

Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

PrevUpHomeNext
#include <boost/coroutine/asymmetric_coroutine.hpp>
template< typename Arg >
class asymmetric_coroutine<>::push_type
{
public:
    push_type() noexcept;
    template< typename Fn >
    push_type( Fn && fn, attributes const& attr = attributes() );
    template< typename Fn, typename StackAllocator >
    push_type( Fn && fn, attributes const& attr, StackAllocator stack_alloc);
    push_type( push_type const& other)=delete;
    push_type & operator=( push_type const& other)=delete;
    ~push_type();
    push_type( push_type && other) noexcept;
    push_type & operator=( push_type && other) noexcept;
    operator unspecified-bool-type() const noexcept;
    bool operator!() const noexcept;
    void swap( push_type & other) noexcept;
    push_type & operator()( Arg arg);
};
template< typename Arg >
void swap( push_type< Arg > & l, push_type< Arg > & r);
template< typename Arg >
range_iterator< push_type< Arg > >::type begin( push_type< Arg > &);
template< typename Arg >
range_iterator< push_type< Arg > >::type end( push_type< Arg > &);
push_type()

Effects:

Создает корутин, представляющийне-корутин.

Throws:

Ничего.

template< typename Fn > push_type( Fn && fn, attributes const& attr)

Preconditions:

размер>= минимальный размер (),размер<= maximum_stacksize() при ! is_stack_unbounded().

Effects:

Создает корутин, который будет исполнять.. Аргументattrопределяет стек очистки.

template< typename Fn, typename StackAllocator > push_type( Fn && fn, attributes const& attr, StackAllocator const& stack_alloc)

Preconditions:

размер>= минимальный размер (),размер<= maximum_stacksize() при ! is_stack_unbounded().

Effects:

Создает корутин, который будет исполнять.. Аргументattrопределяет стек очистки. Для выделения/размещения используется стекstack_alloc.

~push_type()

Effects:

Уничтожает контекст и распределяет стек.

push_type( push_type && other)

Effects:

Переносит внутренние данныедругихна*это.другиестановятсяне-корутинными.

Throws:

Ничего.

push_type & operator=( push_type && other)

Effects:

Уничтожает внутренние данные*этогои перемещает внутренние данныедругихвэтого.другихстановитсяне-корутинным.

Throws:

Ничего.

operator unspecified-bool-type() const

Returns:

Если*этоотносится кне-а-коротинили функция-коротин вернулась (завершена), функция возвращаетложнуюВ противном случаеистинно.

Throws:

Ничего.

bool operator!() const

Returns:

Если*этоотносится кне-коротинили функция коротин вернулась (завершена), функция возвращаетистинное.

Throws:

Ничего.

push_type & operator()(Arg arg)
push_type& asymmetric_coroutine<Arg>::push_type::operator()(Arg);
push_type& asymmetric_coroutine<Arg&>::push_type::operator()(Arg&);
push_type& asymmetric_coroutine<void>::push_type::operator()();

Preconditions:

истиннодля*это.

Effects:

Контроль исполнения передаетсякорутинной функциии аргументargпередается корутинной функции.

Throws:

Исключения, брошенные внутрькорутин-функция.

void swap( push_type & other)

Effects:

Перемещает внутренние данные из*этогосо значениямидругого.

Throws:

Ничего.

Non-member function swap()
template< typename Arg >
void swap( push_type< Arg > & l, push_type< Arg > & r);

Effects:

Как будто "l.swap(r)".

Non-member function begin( push_type< Arg > &)
template< typename Arg >
range_iterator< push_type< Arg > >::type begin( push_type< Arg > &);

Returns:

Возвращает дальномер (output-iterator).

Non-member function end( push_type< Arg > &)
template< typename Arg >
range_iterator< push_type< Arg > >::type end( push_type< Arg > &);

Returns:

Возвращает конечный дальномер (output-iterator).

Note:

При первом получении отначинаюттолкают_тип<R>&], или после некоторого количества операций приращения, итератор будет сравниваться с итератором, возвращаемымконцомтолкают_тип<>, когда соответствующийасимметричный_coroutine<>]::push_тип::operator boolвозвращал быложный.


PrevUpHomeNext

Статья Class asymmetric_coroutine<>::push_type раздела Chapter 1. Coroutine Asymmetric coroutine может быть полезна для разработчиков на c++ и boost.




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: Asymmetric coroutine ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-30 11:47:00
2025-05-19 19:22:36/0.0073568820953369/0