libcopp  1.2.1
Data Structures | Namespaces | Macros | Functions | Variables
coroutine_context.cpp File Reference
#include <algorithm>
#include <assert.h>
#include <cstdlib>
#include <cstring>
#include <libcopp/utils/config/build_feature.h>
#include <libcopp/utils/config/compiler_features.h>
#include <libcopp/utils/errno.h>
#include <libcopp/utils/std/explicit_declare.h>
#include <libcopp/coroutine/coroutine_context.h>
#include <pthread.h>
Include dependency graph for coroutine_context.cpp:

Go to the source code of this file.

Data Structures

struct  copp::libcopp_inner_api_helper
 

Namespaces

 copp
 
 copp::detail
 
 copp::this_coroutine
 

Macros

#define LIBCOPP_SYMBOL_LOCAL
 

Functions

static void copp::detail::init_pthread_this_coroutine_context ()
 
static void copp::detail::set_this_coroutine_context (coroutine_context *p)
 
static coroutine_context * copp::detail::get_this_coroutine_context ()
 
static void copp::jump_to (fcontext::fcontext_t &to_fctx, EXPLICIT_UNUSED_ATTR stack_context &from_sctx, EXPLICIT_UNUSED_ATTR stack_context &to_sctx, libcopp_inner_api_helper::jump_src_data_t &jump_transfer) UTIL_CONFIG_NOEXCEPT
 call platform jump to asm instruction More...
 
coroutine_context * copp::this_coroutine::get_coroutine () UTIL_CONFIG_NOEXCEPT
 get current coroutine More...
 
int copp::this_coroutine::yield (void **priv_data=UTIL_CONFIG_NULLPTR)
 yield current coroutine More...
 

Variables

static pthread_once_t copp::detail::gt_coroutine_init_once = PTHREAD_ONCE_INIT
 
static pthread_key_t copp::detail::gt_coroutine_tls_key
 

Macro Definition Documentation

#define LIBCOPP_SYMBOL_LOCAL

Definition at line 55 of file coroutine_context.cpp.