[Rd] Define replacement functions
soeren.vogel at posteo.ch
soeren.vogel at posteo.ch
Mon May 4 14:52:56 CEST 2015
Hello
I tried to define replacement functions for the class "mylist". When I test them in an active R session, they work -- however, when I put them into a package, they don't. Why and how to fix?
make_my_list <- function( x, y ) {
return(structure(list(x, y, class="mylist")))
}
mylist <- make_my_list(1:4, letters[3:7])
mylist
mylist[['x']] <- 4:6
mylist
"[[<-" <- function(x, field, value) {
UseMethod('[[<-', x)
}
"[[<-.mylist" <- function(x, field, value) {
stop( "Do not assign." )
}
mylist[['x']] <- 1:10
mylist
mylist$y <- LETTERS[1:3]
mylist
"$<-" <- function(x, field, value) {
UseMethod('$<-', x)
}
"$<-.mylist" <- function(x, field, value) {
stop( "Do not assign." )
}
mylist$y <- LETTERS[10:15]
Thanks for help
Sören
More information about the R-devel
mailing list