¿Cómo puedo ver la definición de una función S4? Por ejemplo, me gustaría ver la definición de TSconnect en el paquete TSdbi. El comandoInspeccionar los métodos S4
showMethods("TSconnect")
revela que hay, entre otros, una función para DRV = "histQuoteDriver", nombredb = "carácter".
¿Cómo puedo ver la definición de esta función? Si fuera una función S3, solo habría el primer argumento definible (drv), que podría inspeccionarse con print (TSconnect.histQuoteDriver).
Editar: A partir de R-forja descubrí la salida deseada:
setMethod("TSconnect", signature(drv="histQuoteDriver", dbname="character"),
definition= function(drv, dbname, user="", password="", host="", ...){
# user/password/host for future consideration
if (is.null(dbname)) stop("dbname must be specified")
if (dbname == "yahoo") {
con <- try(url("http://quote.yahoo.com"), silent = TRUE)
if(inherits(con, "try-error"))
stop("Could not establish TShistQuoteConnection to ", dbname)
close(con)
}
else if (dbname == "oanda") {
con <- try(url("http://www.oanda.com"), silent = TRUE)
if(inherits(con, "try-error"))
stop("Could not establish TShistQuoteConnection to ", dbname)
close(con)
}
else
warning(dbname, "not recognized. Connection assumed working, but not tested.")
new("TShistQuoteConnection", drv="histQuote", dbname=dbname, hasVintages=FALSE, hasPanels=FALSE,
user = user, password = password, host = host)
})
¿Hay una manera de conseguir esta definición desde una sesión de I?
Puede encontrar http://stevencarlislewalker.wordpress.com/s3-s4-dictionary/ useful. –