Dear all,
what is the proper way to make the assignment operator generic and define
methods depending on the class of the assigned value?
Best regards
Jens Oehlschlägel
P.S. I vaguely remember that this was possible in S+. In R I tried to no avail:
# using this like h<-1:3 gives Error: in `<-.default`(h, 1:3) : invalid
(do_set) left-hand side to assignment
"<-.default" <- get("<-")
# using this does fail on subassignments like: h <- 1:3 ; h[1] <- 7 (h still
is 1:3)
"<-.default" <- function(x, value){
assign(deparse(substitute(x)), value, parent.frame())
invisible(x)
}
# this seems to work
"<-" <- function(x, value){
UseMethod("<-", value)
}
# whenever the assigned value has class 'ff' I want to do execute something
like
"<-.ff" <- function(x, value){
y <- clone(value)
assign(deparse(substitute(x)), y, parent.frame())
y
}
> version
_
platform i386-pc-mingw32
arch i386
os mingw32
system i386, mingw32
status
major 2
minor 6.0
year 2007
month 10
day 03
svn rev 43063
language R
version.string R version 2.6.0 (2007-10-03)
--
______________________________________________
[email protected] mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel