@@ -33,7 +33,7 @@ ClusterFutureBackend <- function(workers = availableWorkers(), persistent = FALS
3333 stop_if_not(length(workers ) > 0 )
3434
3535 core <- FutureBackend(workers = workers , persistent = persistent , ... )
36- core $ futureClasses <- c(" ClusterFuture" , " Future " )
36+ core [[ " futureClasses" ]] <- c(" ClusterFuture" , core [[ " futureClasses " ]] )
3737 core <- structure(core , class = c(" ClusterFutureBackend" , " FutureBackend" , class(core )))
3838 core
3939}
@@ -53,7 +53,7 @@ launchFuture.ClusterFutureBackend <- function(backend, future, ...) {
5353 workers = backend [[" workers" ]]
5454 )
5555 future <- do.call(as_ClusterFuture , args = args )
56- future <- coerceFuture( backend , future )
56+ class( future ) <- backend [[ " futureClasses " ]]
5757
5858 # # Next available cluster node
5959 t_start <- Sys.time()
@@ -195,7 +195,7 @@ MultisessionFutureBackend <- function(workers = availableCores(), ...) {
195195 }
196196
197197 core <- ClusterFutureBackend(workers = workers , ... )
198- core $ futureClasses <- c(" MultisessionFuture" , core $ futureClasses )
198+ core [[ " futureClasses" ]] <- c(" MultisessionFuture" , core [[ " futureClasses" ]] )
199199 core <- structure(core , class = c(" MultisessionFutureBackend" , class(core )))
200200 core
201201}
0 commit comments