@@ -657,16 +657,15 @@ getExpression <- function(future, ...) UseMethod("getExpression")
657657
658658# ' @export
659659getExpression.Future <- local({
660-
661660 tmpl_expr_evaluate2 <- bquote_compile({
662661 # # Evaluate future
663- future ::: evalFuture(expr = quote(.( expr )) , local = .(local ), stdout = .(stdout ), conditionClasses = .(conditionClasses ), split = .(split ), seed = .( seed ), immediateConditions = .(immediateConditions ), immediateConditionClasses = .(immediateConditionClasses ), globals = .( globals ), packages = .( pkgs ), strategiesR = .(strategiesR ), forwardOptions = .(forwardOptions ), threads = .(threads ), cleanup = .(cleanup ))
662+ future ::: evalFuture(core = .( core ) , local = .(local ), stdout = .(stdout ), conditionClasses = .(conditionClasses ), split = .(split ), immediateConditions = .(immediateConditions ), immediateConditionClasses = .(immediateConditionClasses ), strategiesR = .(strategiesR ), forwardOptions = .(forwardOptions ), threads = .(threads ), cleanup = .(cleanup ))
664663 })
665664
666- function (future , expr = future $ expr , local = future $ local , stdout = future $ stdout , conditionClasses = future $ conditions , split = future $ split , seed = future $ seed , immediateConditions = FALSE , mc.cores = NULL , threads = NA_integer_ , cleanup = TRUE , ... ) {
665+ function (future , expr = future $ expr , seed = future $ seed , local = future $ local , stdout = future $ stdout , conditionClasses = future $ conditions , split = future $ split , immediateConditions = FALSE , mc.cores = NULL , threads = NA_integer_ , cleanup = TRUE , ... ) {
667666 debug <- getOption(" future.debug" , FALSE )
668667 # # mdebug("getExpression() ...")
669-
668+
670669 if (is.null(split )) split <- FALSE
671670 stop_if_not(is.logical(split ), length(split ) == 1L , ! is.na(split ))
672671
@@ -709,7 +708,15 @@ getExpression.Future <- local({
709708 if (debug ) mdebugf(" Packages needed by future strategies (n = %d): %s" , length(pkgsS ), paste(sQuote(pkgsS ), collapse = " , " ))
710709 pkgs <- unique(c(pkgs , pkgsS ))
711710 }
712-
711+
712+ # # Create a future core
713+ core <- list (
714+ expr = expr ,
715+ globals = globals ,
716+ packages = pkgs ,
717+ seed = seed
718+ )
719+
713720 conditionClassesExclude <- attr(conditionClasses , " exclude" , exact = TRUE )
714721 muffleInclude <- attr(conditionClasses , " muffleInclude" , exact = TRUE )
715722 if (is.null(muffleInclude )) muffleInclude <- " ^muffle"
0 commit comments