[Rcpp-devel] type information about elements in Rcpp::List
Dirk Eddelbuettel
edd at debian.org
Wed May 9 05:34:26 CEST 2012
On 8 May 2012 at 23:17, Jiqiang Guo wrote:
| Suppose I have a function in CPP as
|
| void cppfun(Rcpp::List lst) {
| ......
| }
|
| Then I would like to call this cppfun in R code as say
| cppfun(list(a=a, b=b, c=c, ...)), in which
(Well you need a SEXP somefun(SEXP ...) interface from R)
| a, b, c could be of different types and their type might be different as this
| function gets called another time. So I would like to know the type of a, b,
| c in the CPP code. Could someone help me out or point to me some other
| approaches? Thanks.
It's a good question. I have at time thought about that a little, but have no
immediate solution for you.
One could possible use something C++-ish via traits.
One could also use C level macros from the R API which simply test for types
as after all each element of a List must be a SEXP, so we use the SEXP-style
macros.
In the end I always went with more explicit code design: only use a List for
transfer to / from R, and otherwise use explicit C++ types.
Dirk
--
R/Finance 2012 Conference on May 11 and 12, 2012 at UIC in Chicago, IL
See agenda, registration details and more at http://www.RinFinance.com
More information about the Rcpp-devel
mailing list