[Rcpp-devel] today's commits overview

Whit Armstrong armstrong.whit at gmail.com
Thu Jan 7 20:43:32 CET 2010


you're on fire!

are you working on this full time?

-Whit


2010/1/7 Romain François <francoisromain at free.fr>:
> Today has been a Rcpp commit day :-)
>
> We now have classes for most of the SEXP types:
>
> SYMSXP          Symbol
> LISTSXP         Pairlist
> CLOSXP          Function
> ENVSXP          Environment
> PROMSXP         Promise
> LANGSXP         Language
> SPECIALSXP      Function
> BUILTINSXP      Function
> LGLSXP          LogicalVector
> INTSXP          IntegerVector
> REALSXP         NumericVector
> CPLXSXP         ComplexVector
> STRSXP          CharacterVector
> VECSXP          GenericVector a.k.a List
> EXPRSXP         ExpressionVector
> EXTPTRSXP       XPtr
> WEAKREFSXP      WeakReference
> RAWSXP          RawVector
>
> I have also added methods to deal with S4 objects (in the RObject class
> since an S4 object can be of any SEXP type): hasSlot, isS4 and slot.
>
>
> For GenericVector and CharacterVector, I have implemented the proxy
> pattern as described in item 30 of More Effective C++, so that we can do :
>
> CharacterVector x(10) ; /* create a character vector of 10 strings */
> x[0] ; /* gets the first element */
> x[1] = "foo" ; /* sets the second element */
>
> List y(3) ;
> y[0] = 1 ; /* 1 gets wrap()'ed into a IntegerVector */
> y[1] = "foo" ; /* foo gets wrap()'ed into a CharacterVector */
> y[2] = false ; /* false gets wrap()'ed into a LogicalVector */
>
> As usual, many examples have been added in the unit tests.
>
> Romain
>
> --
> Romain Francois
> Professional R Enthusiast
> +33(0) 6 28 91 30 30
> http://romainfrancois.blog.free.fr
> |- http://tr.im/JFqa : R Journal, Volume 1/2, December 2009
> |- http://tr.im/IW9B : C++ exceptions at the R level
> `- http://tr.im/IlMh : CPP package: exposing C++ objects
>
> _______________________________________________
> Rcpp-devel mailing list
> Rcpp-devel at lists.r-forge.r-project.org
> https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel
>


More information about the Rcpp-devel mailing list