R/can_load_extension.R

Defines functions can_load_extension

can_load_extension <- function(name) {
  tryCatch(
    callr::r(args = list(name), function(name) {
      con <- DBI::dbConnect(duckdb::duckdb())
      DBI::dbExecute(con, paste0("INSTALL ", name))
      DBI::dbExecute(con, paste0("LOAD ", name))
      TRUE
    }),
    error = function(e) FALSE
  )
}

on_load({
  env <- environment()
  assign("can_load_extension", memoise::memoise(can_load_extension), envir = env)
})

Try the duckplyr package in your browser

Any scripts or data that you put into this service are public.

duckplyr documentation built on June 8, 2025, 10:53 a.m.