emlabcpp
modern opinionated embedded C++ library
emlabcpp::coro::recursive_coroutine< T > Class Template Reference

#include <recursive.h>

+ Inheritance diagram for emlabcpp::coro::recursive_coroutine< T >:
+ Collaboration diagram for emlabcpp::coro::recursive_coroutine< T >:

Classes

struct  promise_type
 

Public Types

using handle = std::coroutine_handle< promise_type >
 
using owning_handle = owning_coroutine_handle< promise_type >
 

Public Member Functions

 recursive_coroutine ()=default
 
 recursive_coroutine (handle const &cor)
 
bool done () const
 
wait_state get_state () const override
 
bool await_ready () const
 
template<typename U >
void await_suspend (U const h)
 
auto await_resume ()
 
auto get_value ()
 
auto run ()
 
void tick () override
 
- Public Member Functions inherited from emlabcpp::coro::wait_interface
virtual ~wait_interface ()=default
 

Member Typedef Documentation

◆ handle

template<typename T >
using emlabcpp::coro::recursive_coroutine< T >::handle = std::coroutine_handle< promise_type >

◆ owning_handle

Constructor & Destructor Documentation

◆ recursive_coroutine() [1/2]

template<typename T >
emlabcpp::coro::recursive_coroutine< T >::recursive_coroutine ( )
default

◆ recursive_coroutine() [2/2]

template<typename T >
emlabcpp::coro::recursive_coroutine< T >::recursive_coroutine ( handle const &  cor)
inlineexplicit

Member Function Documentation

◆ await_ready()

template<typename T >
bool emlabcpp::coro::recursive_coroutine< T >::await_ready ( ) const
inline

◆ await_resume()

◆ await_suspend()

template<typename T >
template<typename U >
void emlabcpp::coro::recursive_coroutine< T >::await_suspend ( U const  h)
inline

◆ done()

template<typename T >
bool emlabcpp::coro::recursive_coroutine< T >::done ( ) const
inline

◆ get_state()

◆ get_value()

◆ run()

◆ tick()


The documentation for this class was generated from the following file: