--- a +++ b/R/utils.R @@ -0,0 +1,11 @@ +use_cache <- function(id, op, dir = tempdir()) { + id <- digest::digest(id) + fp <- file.path(dir, paste0(id, ".rds")) + if (file.exists(fp)) { + readRDS(fp) + } else { + data <- eval(parse(text = op), envir = parent.frame()) + saveRDS(data, file = fp) + data + } +}