R/addons-glmnet.R

Defines functions append_transpilers_for_glmnet

# glmnet::cv.glmnet(...) =>
#
# with(doFuture::registerDoFuture(flavor = "%dofuture%"), {
#   options(future.disposable = <future arguments>)
#   glmnet::cv.glmnet(..., parallel = TRUE)
# })
#
append_transpilers_for_glmnet <- function() {
  transpilers <- make_package_transpilers("glmnet", FUN = function(fcn, name) {
    if ("parallel" %in% names(formals(fcn))) {
      if (name == "cv.glmnet") {
        defaults <- list(seed = TRUE)
      } else {
        defaults <- list()
      }
      
      list(
        label = sprintf("glmnet::%s() ~> glmnet::%s(..., parallel = TRUE)", name, name),
        transpiler = make_futurize_for_doFuture(defaults = defaults, args = list(parallel = TRUE))
      )
    }
  })

  append_transpilers("futurize::add-on", transpilers)

  ## Return required packages
  c("glmnet", "doFuture")
}

Try the futurize package in your browser

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

futurize documentation built on March 19, 2026, 1:07 a.m.