| NAME |
| yield |
| |
| SYNTAX |
| yield() |
| yield(<value>) |
| yield(<value>, <coroutine>) |
| |
| DESCRIPTION |
| The instruction is only allowed in a coroutine and suspends its |
| execution. |
| |
| The first two forms return to the caller (i.e. the function that |
| continued the execution of the coroutine with call_coroutine()), |
| the third form resumes execution of the given coroutine, which |
| must currently be in a suspended state. |
| |
| The value will be passed to the caller as the result of the |
| call_coroutine() call resp. to the target coroutine as the result |
| of its yield() instruction that suspended its execution before. |
| If the coroutine had just started, the value will be discarded. |
| In the first form, 0 will be passed to the caller. |
| |
| HISTORY |
| Coroutines were introduced in LDMud 3.6.5. |
| |
| SEE ALSO |
| coroutines(LPC), async(LPC), await(LPC), foreach(LPC), |
| call_coroutine(E), this_coroutine(E) |