[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