Hi 
 
I have the code like I show below. The problem here is that I have a setReplacementMethod to set the value of my class slot. However, this function doesn't work when I call it within another function definition (declared by setMethod) of the same class. I do not understand this behavior that much. I'm wondering how to make this work? Any help would be really appreciated. Thank you.
 
setClass("foo", 
representation(x="data.frame", y="character"))
setGeneric("setX<-", function(this, value), standardGeneric("setX<-"))
setReplaceMethod("setX", "foo",
function(this,value) {
this@x <- value
})
setGeneric("generateFrame", function(this), standardGeneric("generateFrame"))
setReplaceMethod("generateFrame", "foo",
function(this) {
frame <- read.csv(file="myfile.csv", header=T) # read some input file
this@x <- frame # this doesn't replace the value for me
setX(this) <- frame # this doesn't replace the value for me
frame # instead I have to return the frame object
})
foo <- function(x,y) {
objFoo <- new("foo", x=data.frame(NULL), y="")
frame <- generateFrame(objFoo) # after this point, nothing got assigned to objFoo@x
setX(objFoo) <- frame # this will work (why do I have to duplicate this??) 
}
- adschai

	[[alternative HTML version deleted]]

