This function lets the user save and load a cache of any R object to improve timings and UX.
cache_write(
data,
base = "temp",
cache_dir = getOption("LARES_CACHE_DIR"),
ask = FALSE,
overwrite = TRUE,
quiet = FALSE,
...
)cache_read(
base,
cache_dir = getOption("LARES_CACHE_DIR"),
ask = FALSE,
overwrite = TRUE,
quiet = FALSE,
...
)
cache_exists(base = NULL, cache_dir = getOption("LARES_CACHE_DIR"), ...)
cache_clear(cache_dir = getOption("LARES_CACHE_DIR"), quiet = FALSE, ...)
cache_pipe(data, base = "cache_pipe", read = TRUE, write = TRUE, ...)
cache_write
. No return value, called for side effects.
cache_read
. R object. Data from cache file or NULL if no cache found.
cache_exists
. Boolean. Result of base
existence.
cache_clear
. Invisible vector containing cache file names removed.
cache_pipe
. Same as x
or cached result.
Object
Character vector. Unique name for your cache file. You can pass
a character vector with multiple elements that will be concatenated.
All cache files with start with lares_cache_*
automatically to
quickly detect these cache files.
Character. Where do you want to save you cache files?
By default they'll be stored on tempdir()
but you can change it
using this parameter or setting a global option called "LARES_CACHE_DIR"
.
Boolean. If cache exists, when reading: (interactive) ask the user if the cache should be used to proceed or ignored; when writing, (interactive) ask the user if the cache should be overwritten. Note that you can only ask for one cache file at a time because vectors are concatenated.
Boolean. Set to overwrite existing cache file. When reading, this parameter answers to ask prompt instead.
Boolean. Keep quiet? If not, informative messages will be shown.
Additional parameters.
Boolean. Do you wish to read and or write cache?
x <- list(a = 1, b = 2:4)
base <- c(as.character(Sys.Date()), "A", "B")
cache_write(x, base)
cache_read(base, ask = FALSE)
cache_exists(base)
cache_clear()
Run the code above in your browser using DataLab