[Rcpp-devel] Returning an element from a List with its attributes?
Wush Wu
wush978 at gmail.com
Tue Aug 20 11:13:31 CEST 2013
Hi Tal,
```
cppFunction('
std::vector<RObject> temp2_fail(RObject x){
std::vector<RObject> lower;
List x_list(wrap(x));
int n = x_list.size();
lower.push_back(x);
return(lower) ;
}
')
```
Is this what you want?
2013/8/20 Tal Galili <tal.galili at gmail.com>
> Dear list members,
>
> I would like to be able to get an element pushed with its attributes, and
> I came across the following problem:
>
> cppFunction('
> std::vector<List> temp(List x){
> std::vector<List> lower;
> lower.push_back(x);
> return(lower) ;
> }
> ')
> x = list(structure(1L, animal = "cat"))
> temp(x)
> temp(x[1])
> temp(x[[1]]) # is there a way to not make this output without attributes?
>
>
>
> If I use RObject, it will solve it, but then I would later not be able to
> iterate over the object, because I can't seem to get the .size() of an
> RObject.
>
> Here is the code with the RObject:
>
>
> cppFunction('
> std::vector<RObject> temp2(RObject x){
> std::vector<RObject> lower;
> lower.push_back(x);
> return(lower) ;
> }
> ')
> x = list(structure(1L, animal = "cat"))
> temp2(x)
> temp2(x[1])
> temp2(x[[1]]) # Now it works as I want, but the following wouldn't work:
>
>
>
>
> cppFunction('
> std::vector<RObject> temp2_fail(RObject x){
> std::vector<RObject> lower;
> int n x.size();
> lower.push_back(x);
> return(lower) ;
> }
> ')
>
>
>
> Any ideas?
>
>
>
>
> ----------------Contact
> Details:-------------------------------------------------------
> Contact me: Tal.Galili at gmail.com |
> Read me: www.talgalili.com (Hebrew) | www.biostatistics.co.il (Hebrew) |
> www.r-statistics.com (English)
>
> ----------------------------------------------------------------------------------------------
>
>
> _______________________________________________
> 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
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.r-forge.r-project.org/pipermail/rcpp-devel/attachments/20130820/92c5f8b6/attachment.html>
More information about the Rcpp-devel
mailing list