Le 19/04/2018 à 12:15, Tomas Kalibera a écrit :
On 04/19/2018 11:47 AM, Serguei Sokol wrote:


replace
    tmp = EncodeElement2(x, i + j*nr, quote_col[j], qmethod,
                    &strBuf, sdec);
by
    tmp = EncodeElement2(VECTOR_ELT(x, (R_xlen_t)i + j*nr), 0, quote_col[j], qmethod,
                    &strBuf, sdec);

Unfortunately we can't do that, x is a matrix of an atomic vector type. VECTOR_ELT is taking elements of a generic vector, so it cannot be applied to "x". But even if we extracted a single element from "x" (e.g. via a type-switch etc), we would not be able to pass it to EncodeElement0 which expects a full atomic vector (that is, including its header). Instead we would have to call functions like EncodeInteger, EncodeReal0, etc on the individual elements. Which is then the same as changing EncodeElement0 or implementing a new version of it. This does not seem that hard to fix, just is not as trivial as changing the cast..

Thanks Tomas for this detailed explanation.

I would like also to signal a problem with the list. It must be corrupted in some way because beside the Tomas'  response I've got five or six (so far) dating spam. All of them coming from two emails: Kristina Oliynik <kristinaoliynik604...@kw.taluss.com> and Samantha Smith <samanthasmith317...@kw.fefty.com>.

Serguei.

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel

Reply via email to