[R-pkg-devel] Initialize Method
Glenn Schultz
glennmschultz at me.com
Sun Jan 8 19:32:19 CET 2017
All,
My package is S4 an I would like to strongly type the input to the constructor function. I understand from reading help etc that the call to new should be in a function and the method initialize is only used when one would like to customize the call to new or when the inputs are different from the slots.
I cannot seem to get the method initialize to work. Below is a minimal example. My class works, my getter works, my constructor function works but I cannot get the initialize to strongly type the inputs. Any help to understand this would be greatly appreciated
Best,
Glenn
setClass("TestClass",
slots = c(
FirstNum = "numeric",
SeconNum = "numeric",
))
setGeneric("FirstNum", function(object)
standardGeneric("FirstNum"))
setMethod("FirstNum", signature("TestClass"),
function(object){object at FirstNum})
TestClass <- function(data1, data2, data3){
FirstNum = data1 * data2
SeconNum = data1/data2 * data3
new("TestClass",
FirstNum = FirstNum,
SeconNum = SeconNum)
}
setMethod("initialize", "TestClass",
"Can I use initialize to type the inputs data1, data2, and data3.
If the function TestClass does heavy lifting can I use TestClass in
the method initialize ? If so, how?"
})
More information about the R-package-devel
mailing list