Nothing
add_on_exit <- function(expr, where = parent.frame()) {
do.call("on.exit", list(substitute(expr), add = TRUE), envir = where)
}
setup_temp_dir <- function(setwd = TRUE, ...) {
dir <- tempfile(...)
dir.create(dir, recursive = TRUE)
old_dir <- NULL
if (setwd) old_dir <- setwd(dir)
# on one line because it not seen by the coverage
cleanup <- bquote({if (.(setwd)) setwd(.(old_dir));unlink(.(dir), recursive = TRUE)})
do.call(add_on_exit, list(cleanup, parent.frame()))
invisible(normalizePath(dir))
}
# add_on_exit <- function(expr, where = parent.frame()) {
# do.call("on.exit", list(substitute(expr), add = TRUE), envir = where)
# }
find_dangling_srcpkgs <- function() {
df <- fetch_srcpkgs_meta() %||% return(character())
df <- df[!file.exists(df$path), ]
intersect(df$package, loadedNamespaces())
}
cleanup_dangling_srcpkgs <- function(quiet = TRUE) {
pkg_names <- find_dangling_srcpkgs() %||% return()
pkgs <- lapply(pkg_names, fetch_srcpkg_meta)
src_pkgs <- srcpkgs(pkgs)
for (pkg_name in pkg_names) pkg_unload(pkg_name, src_pkgs, quiet = quiet)
}
# useful for tests
restore_init <- function(previous) {
if (previous$initialized) {
reset(root = previous$root, srcpkgs_paths = previous$srcpkgs_paths)
} else {
set_initialized()
reset(root = NULL, srcpkgs_paths = NULL)
}
}
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.