Does Rcpp provide some elegant way to let the R user manage persistent
c++ objects that have no R type (e.g. internal handles or sessions of
some sort)?

In C, I would use R_MakeExternalPtr to create a ptr SEXP that the user
can pass from one R function to another. This also makes it easy to
add a finalizer with R_RegisterCFinalizerEx so that the garbage
collector will automatically clean up the session/handle whenever user
deletes the R object.

Most Rcpp examples I have seen use function arguments with standard
data types that are automatically mapped to R types. Does Rcpp have
any special mechanics for managing external objects (pointers) from R
which do not map to a SEXP type? Or do I have to fall back on
Rinternals for this?
_______________________________________________
Rcpp-devel mailing list
Rcpp-devel@lists.r-forge.r-project.org
https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel

Reply via email to