Greetings,

I love the R system and am sincerely grateful for the great effort the
product and contributors
are delivering.

My question is as follows:

I am trying to use S4 style classes but cannot write functions that modify
an object
because paramter passing is by value.
For example I want to do this:

setGeneric("setData", function(this,fcn,k){ standardGeneric("setData") })

setClass(
  "test",
  representation(f="numeric", t="numeric")
)
setMethod("setData","test",
  function(this,fcn,k){
    t...@t <- as.numeric(seq(-k,k))/(2*k+1)
    t...@f <- sapply(t,FUN=fcn)
  }
)

#-----------------------------------------------------------
tst <- new("test")
fcn <- function(u){ sin(2*pi*u) }
setData(tst,fcn,100)
t...@t   # it's still empty because of pass by value


How can this be handled?


Many thanks,

Michael

        [[alternative HTML version deleted]]

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to