File frame.h¶
File List > coroutine > frame.h
Go to the source code of this file.
<coroutine>
header withstd::
namespace/More...
#include <cstddef>
#include <cstdint>
#include <type_traits>
#include <exception>
#include <functional>
Namespaces¶
Type | Name |
---|---|
namespace | std |
namespace | experimental |
Classes¶
Type | Name |
---|---|
struct | coro_traits_sfinae <class _Ret, class> |
struct | coro_traits_sfinae< _Ret, void_t< typename _Ret::promise_type > > <class _Ret> |
struct | coroutine_handle <_PromiseT> |
struct | coroutine_handle <_PromiseT> |
struct | coroutine_handle< noop_coroutine_promise > <> |
struct | coroutine_handle< void > <> |
struct | coroutine_traits <typename _Ret, _Ts> |
struct | hash< coroutine_handle< _PromiseT > > <typename _PromiseT> |
struct | noop_coroutine_promise |
class | suspend_always |
class | suspend_never |
Public Functions¶
Type | Name |
---|---|
void | portable_coro_destroy (portable_coro_prefix * _Handle) |
bool | portable_coro_done (portable_coro_prefix * _Handle) |
auto | portable_coro_from_promise (void * _PromAddr, ptrdiff_t _PromSize) Get the frame prefix 'from_promise'. |
void * | portable_coro_get_promise (portable_coro_prefix * _Handle, ptrdiff_t _PromSize) 'get_promise' from the frame prefix |
void | portable_coro_resume (portable_coro_prefix * _Handle) |
Macros¶
Type | Name |
---|---|
define | _COROUTINE_ |
define | _EXPERIMENTAL_RESUMABLE_ |
define | _RESUMABLE_FUNCTIONS_SUPPORTED |
Detailed Description¶
Author:
github.com/luncliff (luncliff@gmail.com)
Note:
The implementation adjusts difference of coroutine frame between compilers
See also: <experimental/resumable> from Microsoft VC++ (since 2017 Feb.)
See also: <experimental/coroutine> from LLVM libcxx (since 6.0)
See also: 17.12 Coroutines [support.coroutine]
See also: https://en.cppreference.com/w/cpp/header
See also: http://www.open-std.org/jtc1/sc22/wg21/docs/papers
Copyright:
CC BY 4.0
Public Functions Documentation¶
function portable_coro_destroy¶
void portable_coro_destroy (
portable_coro_prefix * _Handle
)
function portable_coro_done¶
bool portable_coro_done (
portable_coro_prefix * _Handle
)
function portable_coro_from_promise¶
auto portable_coro_from_promise (
void * _PromAddr,
ptrdiff_t _PromSize
)
function portable_coro_get_promise¶
void * portable_coro_get_promise (
portable_coro_prefix * _Handle,
ptrdiff_t _PromSize
)
function portable_coro_resume¶
void portable_coro_resume (
portable_coro_prefix * _Handle
)
Macro Definition Documentation¶
define _COROUTINE_¶
#define _COROUTINE_
define _EXPERIMENTAL_RESUMABLE_¶
#define _EXPERIMENTAL_RESUMABLE_
define _RESUMABLE_FUNCTIONS_SUPPORTED¶
#define _RESUMABLE_FUNCTIONS_SUPPORTED
The documentation for this class was generated from the following file interface/coroutine/frame.h