Home
last modified time | relevance | path

Searched refs:coroutine (Results 1 – 25 of 245) sorted by relevance

12345678910

/third_party/boost/libs/coroutine/doc/html/
Dcoro_HTML.manifest2 coroutine/overview.html
3 coroutine/intro.html
4 coroutine/motivation.html
5 coroutine/coroutine.html
6 coroutine/coroutine/asymmetric.html
7 coroutine/coroutine/asymmetric/pull_coro.html
8 coroutine/coroutine/asymmetric/push_coro.html
9 coroutine/coroutine/symmetric.html
10 coroutine/coroutine/symmetric/symmetric_coro.html
11 coroutine/coroutine/symmetric/yield_coro.html
[all …]
/third_party/boost/libs/coroutine2/test/
Dtest_coroutine.cpp55 void operator()( coro::coroutine< int >::push_type &) in operator ()()
88 void operator()( coro::coroutine< int >::push_type &) in operator ()()
120 void f1( coro::coroutine< void >::push_type & c) in f1()
126 void f2( coro::coroutine< void >::push_type &) in f2()
129 void f3( coro::coroutine< void >::push_type & c) in f3()
136 void f4( coro::coroutine< int >::push_type & c) in f4()
142 void f5( coro::coroutine< std::string >::push_type & c) in f5()
150 void f6( coro::coroutine< int >::pull_type & c) in f6()
153 void f7( coro::coroutine< std::string >::pull_type & c) in f7()
156 void f8( coro::coroutine< std::tuple< double, double > >::pull_type & c) in f8()
[all …]
/third_party/boost/libs/coroutine2/doc/
Dcoro.qbk12 [purpose C++11 Library providing coroutine facility]
28 [def __coro__ ['coroutine]]
29 [def __coro_fn__ ['coroutine-function]]
32 [def __not_a_coro__ ['not-a-coroutine]]
41 [def __acoro__ ['coroutine<>]]
59 [def __pull_coro__ ['coroutine<>::pull_type]]
60 [def __pull_coro_bool__ ['coroutine<>::pull_type::operator bool]]
61 [def __pull_coro_get__ ['coroutine<>::pull_type::get()]]
62 [def __pull_coro_it__ ['coroutine<>::pull_type::iterator]]
63 [def __pull_coro_op__ ['coroutine<>::pull_type::operator()]]
[all …]
Dasymmetric.qbk8 [section:asymmetric Asymmetric coroutine]
10 Two asymmetric coroutine types - __push_coro__ and __pull_coro__ - provide a
23 This kind of coroutine provides __pull_coro_op__. This method only switches
29 typedef boost::coroutines2::coroutine<int> coro_t;
76 values from another execution context with this kind of coroutine.
82 typedef boost::coroutines2::coroutine<std::string> coro_t;
143 containing the strings and pass them one by one to the coroutine.
146 [heading coroutine-function]
147 The __coro_fn__ returns ['void] and takes its counterpart-coroutine as
148 argument, so that using the coroutine passed as argument to __coro_fn__ is the
[all …]
Dintro.qbk20 is that a coroutine enables explicit suspend and resume of its progress via
33 every call and would never be popped. A jump into the middle of a coroutine
37 The solution is that each coroutine has its own stack and control-block
39 Before the coroutine gets suspended, the non-volatile registers (including stack
40 and instruction/program pointer) of the currently active coroutine are stored in
41 the coroutine's control-block.
42 The registers of the newly activated coroutine must be restored from its
57 February 2009, Article No. 6] of a coroutine are:
60 * execution is suspended as control leaves coroutine and is resumed at certain time later
76 An asymmetric coroutine knows its invoker, using a special operation to
[all …]
Dcoroutine.qbk8 [section:coroutine Coroutine]
20 Each instance of a coroutine has its own stack.
28 A coroutine is moveable-only.
33 of the coroutine copies terminates (unwinds its stack), the RAII class
40 On coroutine destruction the associated stack will be unwound.
42 The constructor of coroutine allows you to pass a customized ['stack-allocator].
53 At construction a coroutine starts with a default (minimal) stack size. This
67 A coroutine saves and restores registers according to the underlying ABI on
73 coroutine results in undefined behaviour.]
77 boost::coroutines2::coroutine<void>::push_type coro(
[all …]
/third_party/boost/libs/coroutine2/example/
Dsame_fringe.cpp81 void traverse(node::ptr_t n, boost::coroutines2::coroutine<std::string>::push_type& out) { in traverse()
95 boost::coroutines2::coroutine<std::string>::pull_type left_d_reader( in main()
96 [&]( boost::coroutines2::coroutine<std::string>::push_type & out) { in main()
105 boost::coroutines2::coroutine<std::string>::pull_type right_b_reader( in main()
106 [&]( boost::coroutines2::coroutine<std::string>::push_type & out) { in main()
115 boost::coroutines2::coroutine<std::string>::pull_type right_x_reader( in main()
116 [&]( boost::coroutines2::coroutine<std::string>::push_type & out) { in main()
130 boost::coroutines2::coroutine<std::string>::pull_type left_d_reader( in main()
131 [&]( boost::coroutines2::coroutine<std::string>::push_type & out) { in main()
135 boost::coroutines2::coroutine<std::string>::pull_type right_b_reader( in main()
[all …]
/third_party/boost/libs/asio/test/
Dcoroutine.cpp28 void yield_break_coro(boost::asio::coroutine& coro) in yield_break_coro()
39 boost::asio::coroutine coro; in yield_break_test()
51 void return_coro(boost::asio::coroutine& coro) in return_coro()
61 boost::asio::coroutine coro; in return_test()
70 void exception_coro(boost::asio::coroutine& coro) in exception_coro()
80 boost::asio::coroutine coro; in exception_test()
89 void fall_off_end_coro(boost::asio::coroutine& coro) in fall_off_end_coro()
98 boost::asio::coroutine coro; in fall_off_end_test()
/third_party/boost/libs/coroutine/doc/
Dsymmetric.qbk8 [section:symmetric Symmetric coroutine]
12 to any other (symmetric) coroutine. E.g. a symmetric coroutine is not required
17 __call_coro__ starts a symmetric coroutine and transfers its parameter to its
27 retrieve values from another execution context with this kind of coroutine
39 Data transferred to the coroutine are accessed through __yield_coro_get__.
54 yield(*other_b); // yield to coroutine coro_b
67 yield(*other_a); // yield to coroutine coro_a
79 coro_a(); // enter coroutine-fn of coro_a
101 the local one. If so, the coroutine yields to the other coroutine `coro_b`
104 Because the coroutine jumps back to `coro_a()` (returning from this method)
[all …]
Dintro.qbk20 is that a coroutine enables explicit suspend and resume of its progress via
30 [$../../../../libs/coroutine/doc/images/foo_bar.png [align center]]
33 every call and would never be popped. A jump into the middle of a coroutine
37 The solution is that each coroutine has its own stack and control-block
39 Before the coroutine gets suspended, the non-volatile registers (including stack
40 and instruction/program pointer) of the currently active coroutine are stored in
41 the coroutine's control-block.
42 The registers of the newly activated coroutine must be restored from its
57 February 2009, Article No. 6] of a coroutine are:
60 * execution is suspended as control leaves coroutine and is resumed at certain time later
[all …]
Dcoroutine.qbk8 [section:coroutine Coroutine]
23 Each instance of a coroutine has its own stack.
31 A coroutine is moveable-only.
36 of the coroutine copies terminates (unwinds its stack), the RAII class
43 On coroutine destruction the associated stack will be unwound.
45 The constructor of coroutine allows you to pass a customized ['stack-allocator].
57 At construction a coroutine starts with a default (minimal) stack size. This
71 A coroutine saves and restores registers according to the underlying ABI on
80 On POSIX systems, the coroutine context switch does not preserve signal masks
87 inside the [_same] coroutine results in undefined behaviour.]
Dasymmetric.qbk8 [section:asymmetric Asymmetric coroutine]
10 Two asymmetric coroutine types - __push_coro__ and __pull_coro__ - provide a
22 This kind of coroutine provides __pull_coro_op__. This method only switches
73 values from another execution context with this kind of coroutine.
138 containing the strings and pass them one by one to the coroutine.
141 [heading coroutine-function]
142 The __coro_fn__ returns ['void] and takes its counterpart-coroutine as
143 argument, so that using the coroutine passed as argument to __coro_fn__ is the
145 Both coroutine types take the same template argument.
150 coroutine can be checked via __pull_coro_bool__ returning `true` if the
[all …]
/third_party/boost/libs/asio/doc/overview/
Dcoroutine.qbk8 [section:coroutine Stackless Coroutines]
10 The [link boost_asio.reference.coroutine `coroutine`] class provides support for
15 struct session : boost::asio::coroutine
39 The `coroutine` class is used in conjunction with the pseudo-keywords
42 Duff's Device. The [link boost_asio.reference.coroutine `coroutine`] class's
47 [link boost_asio.reference.coroutine coroutine],
Dspawn.qbk44 This argument determines the context in which the coroutine is permitted to
51 void coroutine(boost::asio::yield_context yield);
53 that specifies the code to be run as part of the coroutine. The parameter
61 This starts the asynchronous operation and suspends the coroutine. The
62 coroutine will be resumed automatically when the asynchronous operation
78 the coroutine as a `system_error` exception.
91 void coroutine(boost::asio::basic_yield_context<Handler> yield);
100 [link boost_asio.overview.core.coroutine Stackless Coroutines].
Dcoroutines_ts.qbk39 executor] that determines the context in which the coroutine is permitted to
45 that is the result of the coroutine's entry point function, and in the above
49 produced by the coroutine. In the above example, the coroutine returns `void`.
53 completion handler is invoked with the result of the coroutine once it has
58 In this example the body of the coroutine is implemented in the `echo`
79 passed back to the coroutine as a `system_error` exception.
92 [link boost_asio.overview.core.coroutine Stackless Coroutines].
/third_party/python/Doc/library/
Dasyncio-task.rst21 :term:`Coroutines <coroutine>` declared with the async/await syntax is the
37 Note that simply calling a coroutine will not schedule it to
41 <coroutine object main at 0x1053bb7c8>
43 To actually run a coroutine, asyncio provides three main mechanisms:
48 * Awaiting on a coroutine. The following snippet of code will
132 # A coroutine object is created but not awaited,
143 In this documentation the term "coroutine" can be used for
146 * a *coroutine function*: an :keyword:`async def` function;
148 * a *coroutine object*: an object returned by calling a
149 *coroutine function*.
[all …]
/third_party/boost/libs/coroutine2/doc/html/
Dcoro_HTML.manifest5 coroutine2/coroutine.html
6 coroutine2/coroutine/asymmetric.html
7 coroutine2/coroutine/asymmetric/pull_coro.html
8 coroutine2/coroutine/asymmetric/push_coro.html
9 coroutine2/coroutine/implementations__fcontext_t__ucontext_t_and_winfiber.html
/third_party/boost/libs/coroutine2/performance/segmented/
Dperformance_switch.cpp34 void fn_void( boost::coroutines2::coroutine< void >::push_type & c) in fn_void()
37 void fn_int( boost::coroutines2::coroutine< int >::push_type & c) in fn_int()
40 void fn_x( boost::coroutines2::coroutine< X >::push_type & c) in fn_x()
48 boost::coroutines2::coroutine< void >::pull_type c( stack_alloc, fn_void); in measure_time_void()
65 boost::coroutines2::coroutine< int >::pull_type c( stack_alloc, fn_int); in measure_time_int()
82 boost::coroutines2::coroutine< X >::pull_type c( stack_alloc, fn_x); in measure_time_x()
100 boost::coroutines2::coroutine< void >::pull_type c( stack_alloc, fn_void); in measure_cycles_void()
117 boost::coroutines2::coroutine< int >::pull_type c( stack_alloc, fn_int); in measure_cycles_int()
134 boost::coroutines2::coroutine< X >::pull_type c( stack_alloc, fn_x); in measure_cycles_x()
/third_party/boost/libs/outcome/doc/src/content/reference/aliases/
Dlazy.md3 description = "A lazily evaluated coroutine awaitable with Outcome customisation."
13 `atomic_lazy<T>` is like `lazy<T>`, except that the setting of the coroutine result
14 performs an atomic release, whilst the checking of whether the coroutine has finished
18 https://wg21.link/P1056 *Add lazy coroutine (coroutine task) type*.
40 any exceptions thrown within the coroutine body through the coroutine machinery.
42 therefore wrap the coroutine body in a `try...catch` if `T` is not able to transport
Deager.md3 description = "An eagerly evaluated coroutine awaitable with Outcome customisation."
12 `atomic_eager<T>` is like `eager<T>`, except that the setting of the coroutine result
13 performs an atomic release, whilst the checking of whether the coroutine has finished
24 // Executes like a non-coroutine function i.e. r is immediately set to 6.
36 any exceptions thrown within the coroutine body through the coroutine machinery.
38 therefore wrap the coroutine body in a `try...catch` if `T` is not able to transport
/third_party/boost/libs/outcome/doc/src/content/reference/types/awaitables/
Dlazy.md3 description = "A lazily evaluated coroutine awaitable with Outcome customisation."
13 `atomic_lazy<T>` is like `lazy<T>`, except that the setting of the coroutine result
14 performs an atomic release, whilst the checking of whether the coroutine has finished
18 https://wg21.link/P1056 *Add lazy coroutine (coroutine task) type*.
40 any exceptions thrown within the coroutine body through the coroutine machinery.
42 therefore wrap the coroutine body in a `try...catch` if `T` is not able to transport
Deager.md3 description = "An eagerly evaluated coroutine awaitable with Outcome customisation."
12 `atomic_eager<T>` is like `eager<T>`, except that the setting of the coroutine result
13 performs an atomic release, whilst the checking of whether the coroutine has finished
24 // Executes like a non-coroutine function i.e. r is immediately set to 6.
36 any exceptions thrown within the coroutine body through the coroutine machinery.
38 therefore wrap the coroutine body in a `try...catch` if `T` is not able to transport
/third_party/boost/libs/coroutine/
DREADME.md1 boost.coroutine
4 boost.coroutine provides templates for generalized subroutines which allow multiple entry points for
11 when a switch will happen). The kernel is not involved in the coroutine switches.
13 Note that boost.coroutine is deprecated - boost.coroutine2 is its successor.
14 If you are forced to use a pre-C++11 compiler you should still use boost.coroutine.
/third_party/boost/boost/asio/
Dcoroutine.hpp242 class coroutine class
246 coroutine() : value_(0) {} in coroutine() function in boost::asio::coroutine
268 coroutine_ref(coroutine& c) : value_(c.value_), modified_(false) {} in coroutine_ref()
269 coroutine_ref(coroutine* c) : value_(c->value_), modified_(false) {} in coroutine_ref()
/third_party/boost/libs/asio/include/boost/asio/
Dcoroutine.hpp242 class coroutine class
246 coroutine() : value_(0) {} in coroutine() function in boost::asio::coroutine
268 coroutine_ref(coroutine& c) : value_(c.value_), modified_(false) {} in coroutine_ref()
269 coroutine_ref(coroutine* c) : value_(c->value_), modified_(false) {} in coroutine_ref()

12345678910