[Rd] validity testing as part of '@<-'

Parlamis Franklin fparlamis at mac.com
Thu Sep 21 23:29:38 CEST 2006


'methods' package feature request / discussion starter:

perhaps a call to 'validObject' should occur at part of any slot  
replacement operation (and the operation not be carried out if it  
would invalidate the object)?  this may prevent the need for  
prophylactic 'validObject' calls in other user-defined functions.  in  
the example below, the slot assignment occurs even though it  
invalidates the object.  the 'show' method then fails somewhat deep  
in a subsequently-called coercion method.

library(Matrix)
test <- Matrix(1:4+0.1, nrow = 2, dimnames = list(letters[1:2],  
LETTERS[1:2]))
test at Dimnames <- list(1:100)
test

direct slot access (without a validity check) seems an easily  
accessible loophole to S4 object "guarantees".

franklin parlamis




More information about the R-devel mailing list