Go to the documentation of this file.
13 #ifndef LIBCOPP_UTILS_STD_COROUTINE_H
14 #define LIBCOPP_UTILS_STD_COROUTINE_H
18 #include <libcopp/utils/config/libcopp_build_features.h>
23 #if defined(LIBCOPP_MACRO_ENABLE_STD_COROUTINE) && LIBCOPP_MACRO_ENABLE_STD_COROUTINE
24 # if defined(LIBCOPP_MACRO_USE_STD_EXPERIMENTAL_COROUTINE) && LIBCOPP_MACRO_USE_STD_EXPERIMENTAL_COROUTINE
25 # include <experimental/coroutine>
26 # define LIBCOPP_MACRO_FUTURE_COROUTINE_VOID std::experimental::coroutine_handle<>
27 # define LIBCOPP_MACRO_FUTURE_COROUTINE_TYPE(T) std::experimental::coroutine_handle<T>
30 # define LIBCOPP_MACRO_FUTURE_COROUTINE_VOID std::coroutine_handle<>
31 # define LIBCOPP_MACRO_FUTURE_COROUTINE_TYPE(T) std::coroutine_handle<T>
38 #if defined(LIBCOPP_MACRO_USE_STD_EXPERIMENTAL_COROUTINE) && LIBCOPP_MACRO_USE_STD_EXPERIMENTAL_COROUTINE
39 # define LIBCOPP_MACRO_STD_COROUTINE_NAMESPACE std::experimental::
41 # define LIBCOPP_MACRO_STD_COROUTINE_NAMESPACE std::