Message-ID: <19918.40359.229999.700861@max.nulle.part>
Date: 2011-05-14T15:20:07Z
From: Dirk Eddelbuettel
Subject: [Rcpp-devel] Exposing constructors with same number of arguments with different types using Rcpp Modules
In-Reply-To: <19917.25390.218952.626130@max.nulle.part>
On 13 May 2011 at 11:58, Dirk Eddelbuettel wrote:
| On 13 May 2011 at 16:35, Jelmer Ypma wrote:
| | Dear Rcpp-list,
| |
| | I'm trying to expose multiple constructors of a C++ class to R using
| | modules. Here is an example of what I want to do based on the Uniform
| | example
[...]
| | Compilation works fine (on Windows using RTools, Rcpp_0.9.4.1,
| | inline_0.3.8), but the R code cannot distinguish between two
| | constructors with the same number of arguments, but with different
| | types for the arguments and always calls Uniform(double, double). The
|
| If I recall correctly, we have determined that this cannot work. It is one of
| these 'obvious in hindsight' issue. Recall that R does the dispatch, and R
| cannot differentiate between foo(double) and foo(int) as it is not typed.
|
| So I think you will have to differentiate the constructors by name. Sorry
| about that, but even Rcpp modules has its limits.
|
| And I may of course be wrong too in which case Romain may come in and
| clarify.
I got a brief word in with Romain who clarified that this ought to be
possible but may not be right now. So stay tuned -- with some luck Romain
may be able to improve on what we currently have.
In the meantime you may have to make do with different setter functions.
Dirk
--
Gauss once played himself in a zero-sum game and won $50.
-- #11 at http://www.gaussfacts.com