class coroutine_self

Declaration

class coroutine_self { /* full declaration omitted */ };

Declared at: libs/pika/coroutines/include/pika/coroutines/detail/coroutine_self.hpp:47

Method Overview

  • public coroutine_self(pika::threads::coroutines::detail::coroutine_self * next_self)
  • public template <typename F>pika::threads::coroutines::detail::coroutine_self::yield_decorator_type decorate_yield(F && f)
  • public pika::threads::coroutines::detail::coroutine_self::yield_decorator_type decorate_yield(const pika::threads::coroutines::detail::coroutine_self::yield_decorator_type & f)
  • public pika::threads::coroutines::detail::coroutine_self::yield_decorator_type decorate_yield(pika::threads::coroutines::detail::coroutine_self::yield_decorator_type && f)
  • public virtual std::ptrdiff_t get_available_stack_space()
  • public virtual std::size_t & get_continuation_recursion_count()
  • public virtual pika::threads::coroutines::detail::tss_storage * get_or_create_thread_tss_data()
  • public static pika::threads::coroutines::detail::coroutine_self * get_self()
  • public virtual std::size_t get_thread_data() const
  • public virtual pika::threads::coroutines::detail::coroutine_self::thread_id_type get_thread_id() const
  • public virtual std::size_t get_thread_phase() const
  • public virtual pika::threads::coroutines::detail::tss_storage * get_thread_tss_data()
  • public static pika::threads::coroutines::detail::coroutine_self *& local_self()
  • public static void set_self(pika::threads::coroutines::detail::coroutine_self * self)
  • public virtual std::size_t set_thread_data(std::size_t data)
  • public pika::threads::coroutines::detail::coroutine_self::yield_decorator_type undecorate_yield()
  • public pika::threads::coroutines::detail::coroutine_self::arg_type yield(pika::threads::coroutines::detail::coroutine_self::result_type arg = std::pair<pika::threads::thread_schedule_state, pika::threads::thread_id>())
  • public virtual pika::threads::coroutines::detail::coroutine_self::arg_type yield_impl(pika::threads::coroutines::detail::coroutine_self::result_type arg)
  • public virtual ~coroutine_self()

Methods

coroutine_self(pika::threads::coroutines::detail::
                   coroutine_self* next_self)

Declared at: libs/pika/coroutines/include/pika/coroutines/detail/coroutine_self.hpp:78

Parameters

pika::threads::coroutines::detail::coroutine_self* next_self

template <typename F>
pika::threads::coroutines::detail::
    coroutine_self::yield_decorator_type
    decorate_yield(F&& f)

Declared at: libs/pika/coroutines/include/pika/coroutines/detail/coroutine_self.hpp:91

Parameters

F&& f

pika::threads::coroutines::detail::
    coroutine_self::yield_decorator_type
    decorate_yield(
        const pika::threads::coroutines::detail::
            coroutine_self::yield_decorator_type&
                f)

Declared at: libs/pika/coroutines/include/pika/coroutines/detail/coroutine_self.hpp:98

Parameters

const pika::threads::coroutines::detail:: coroutine_self::yield_decorator_type& f

pika::threads::coroutines::detail::
    coroutine_self::yield_decorator_type
    decorate_yield(
        pika::threads::coroutines::detail::
            coroutine_self::yield_decorator_type&&
                f)

Declared at: libs/pika/coroutines/include/pika/coroutines/detail/coroutine_self.hpp:105

Parameters

pika::threads::coroutines::detail:: coroutine_self::yield_decorator_type&& f

virtual std::ptrdiff_t get_available_stack_space()

Declared at: libs/pika/coroutines/include/pika/coroutines/detail/coroutine_self.hpp:126

virtual std::size_t&
get_continuation_recursion_count()

Declared at: libs/pika/coroutines/include/pika/coroutines/detail/coroutine_self.hpp:147

virtual pika::threads::coroutines::detail::
    tss_storage*
    get_or_create_thread_tss_data()

Declared at: libs/pika/coroutines/include/pika/coroutines/detail/coroutine_self.hpp:145

static pika::threads::coroutines::detail::
    coroutine_self*
    get_self()

Declared at: libs/pika/coroutines/include/pika/coroutines/detail/coroutine_self.hpp:167

virtual std::size_t get_thread_data() const

Declared at: libs/pika/coroutines/include/pika/coroutines/detail/coroutine_self.hpp:128

virtual pika::threads::coroutines::detail::
    coroutine_self::thread_id_type
    get_thread_id() const

Declared at: libs/pika/coroutines/include/pika/coroutines/detail/coroutine_self.hpp:122

virtual std::size_t get_thread_phase() const

Declared at: libs/pika/coroutines/include/pika/coroutines/detail/coroutine_self.hpp:124

virtual pika::threads::coroutines::detail::
    tss_storage*
    get_thread_tss_data()

Declared at: libs/pika/coroutines/include/pika/coroutines/detail/coroutine_self.hpp:144

static pika::threads::coroutines::detail::
    coroutine_self*&
    local_self()

Declared at: libs/pika/coroutines/include/pika/coroutines/detail/coroutine_self.hpp:161

static void set_self(
    pika::threads::coroutines::detail::
        coroutine_self* self)

Declared at: libs/pika/coroutines/include/pika/coroutines/detail/coroutine_self.hpp:163

Parameters

pika::threads::coroutines::detail::coroutine_self* self

virtual std::size_t set_thread_data(
    std::size_t data)

Declared at: libs/pika/coroutines/include/pika/coroutines/detail/coroutine_self.hpp:129

Parameters

std::size_t data

pika::threads::coroutines::detail::
    coroutine_self::yield_decorator_type
    undecorate_yield()

Declared at: libs/pika/coroutines/include/pika/coroutines/detail/coroutine_self.hpp:111

pika::threads::coroutines::detail::
    coroutine_self::arg_type
    yield(pika::threads::coroutines::detail::
              coroutine_self::result_type arg =
                  std::pair<
                      pika::threads::
                          thread_schedule_state,
                      pika::threads::thread_id>())

Declared at: libs/pika/coroutines/include/pika/coroutines/detail/coroutine_self.hpp:83

Parameters

pika::threads::coroutines::detail:: coroutine_self::result_type arg = std::pair<pika::threads::thread_schedule_state, pika::threads::thread_id>()

virtual pika::threads::coroutines::detail::
    coroutine_self::arg_type
    yield_impl(
        pika::threads::coroutines::detail::
            coroutine_self::result_type arg)

Declared at: libs/pika/coroutines/include/pika/coroutines/detail/coroutine_self.hpp:120

Parameters

pika::threads::coroutines::detail:: coroutine_self::result_type arg

virtual ~coroutine_self()

Declared at: libs/pika/coroutines/include/pika/coroutines/detail/coroutine_self.hpp:118