view R/rdyncall/demo/factorial.R @ 66:7a61dd082341 default tip

pydc: - fix double free triggered by capsule destructor, when freeing pydc and callback objects, manually
author Tassilo Philipp
date Fri, 24 May 2024 18:16:29 +0200
parents 0cfcc391201f
children
line wrap: on
line source

f <- function(i,fun)
{
  if (i > 1) i * .dyncall(fun,"ip)i",i-1,fun) else i
}
e <- new.env()
cb <- new.callback("ip)i", f,e)
e <- NULL
f <- NULL
gc()
r <- .dyncall(cb,"ip)i",12,cb)
r == factorial(12)
cb <- NULL
gc()