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
This is an older version of Boost and was released in 2013. The current version is 1.91.0.
A coroutine uses internally a context which manages a set of registers and a stack. The memory used by the stack is allocated/deallocated via a stack-allocator which is required to model a stack-allocator concept.
A stack-allocator must satisfy the stack-allocator
concept requirements shown in the following table, in which a is an object of a stack-allocator
type, p is a void *, and
s is a std::size_t:
|
expression |
return type |
notes |
|---|---|---|
|
|
|
returns a pointer to |
|
|
|
deallocates |
![]() |
Important |
|---|---|
The implementation of |
![]() |
Important |
|---|---|
Calling |
![]() |
Note |
|---|---|
The stack is not required to be aligned; alignment takes place inside coroutine. |
![]() |
Note |
|---|---|
Depending on the architecture |