| promise_map | R Documentation |
Similar to base::lapply() or purrr::map, but promise-aware: the .f
function is permitted to return promises, and while lapply returns a list,
promise_map returns a promise that resolves to a similar list (of resolved
values only, no promises).
promise_map(.x, .f, ...)
.x |
A vector (atomic or list) or an expression object (but not a promise). Other objects (including classed objects) will be coerced by base::as.list. |
.f |
The function to be applied to each element of |
... |
Optional arguments to |
promise_map processes elements of .x serially; that is, if .f(.x[[1]])
returns a promise, then .f(.x[[2]]) will not be invoked until that promise
is resolved. If any such promise rejects (errors), then the promise returned
by promise_map immediately rejects with that err.
A promise that resolves to a list (of values, not promises).
# Waits x seconds, then returns x*10
wait_this_long <- function(x) {
promise(\(resolve, reject) {
later::later(\() resolve(x*10), delay = x)
})
}
promise_map(
list(A=1, B=2, C=3),
wait_this_long
) |>
then(print)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.