...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Class attributes
is used to
specify parameters required to setup a coroutine's context.
enum flag_unwind_t { stack_unwind, no_stack_unwind }; struct attributes { std::size_t size; flag_unwind_t do_unwind; attributes() noexcept; explicit attributes( std::size_t size_) noexcept; explicit attributes( flag_unwind_t do_unwind_) noexcept; explicit attributes( std::size_t size_, flag_unwind_t do_unwind_) noexcept; };
attributes()
Default constructor using boost::context::default_stacksize()
, does unwind the stack after coroutine/generator
is complete.
Nothing.
attributes( std::size_t
size)
Argument size
defines
stack size of the new coroutine. Stack unwinding after termination.
Nothing.
attributes( flag_unwind_t do_unwind)
Argument do_unwind
determines
if stack will be unwound after termination or not. The default stacksize
is used for the new coroutine.
Nothing.
attributes( std::size_t
size, flag_unwind_t do_unwind)
Arguments size
and do_unwind
are given by the user.
Nothing.