The yield()
statement suspends generator()
functions. It works
like return()
except that the function continues execution at the
yielding point when it is called again.
yield()
can be called within loops and if-else branches but for
technical reasons it can't be used anywhere in R code:
yield()
cannot be called as part of a function argument. Code
such as list(yield())
is illegal.
yield()
does not cross function boundaries. You can't use it a
lambda function passed to lapply()
for instance.
yield(x)
A value to yield.
generator()
for examples.