Rev 4088 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed
#### symmetricMatrix : virtual class### autogenerate coercions### as(*, "symmetricMatrix")### ~~~~~~~~~~~~~~~~~~~~~~~~~## This should work at package install time when package:Matrix does not exist!if(FALSE)local({allCl <- getClasses("package:Matrix") ## << fails at install time!!!!clss <- allCl[sapply(allCl, extends, class2 = "Matrix")]virt <- sapply(clss, isVirtualClass)## Now ensure coercions for all non-virtual "Matrix" inheriting classes:for(cl in clss[!virt]) {cld <- getClassDef(cl)if(extends(cld, "symmetricMatrix"))cat("\tsymmetric:\t", cl,"\n")else if(extends(cld, "triangularMatrix"))cat("\ttriangular:\t", cl,"\n")else if(extends(cld, "diagonalMatrix"))cat("\tdiagonal:\t", cl,"\n")else {cat("do ",cl,"\n")## setAs(cl, "symmetricMatrix",## function(from) as(from, ".s.Matrix"))}}## for})