Я сделал функцию набора классов, которая возвращает список переменных с установленным классом.Вызов его выполняет запланированную работу, но когда сделан вызов связанной функции, вызов вводится в функцию по умолчанию.
classset <- function(stud= TRUE, res = pass)
{
entry = list(student = stud, result= res)
class(entry) <- "registration"
return(entry)
}
setrecord <- function(rec,newval)
{
print("in setting")
UseMethod("setrecord",rec)
}
setrecord.default <- function(m,n)
{
print("in def")
return(m)
}
setrecord.classset <- function(m,n){
print("in class func")
m$stud <- aqqi
m$res <- n
return(m)
}
reh <- classset("aqqi","pass")
reh$student
[1] "aqqi"
reh$result
[1] "pass"
reh <- setrecord(reh,"fail") ##Expecting call to setrecord.classet
[1] "in setting"
[1] "in def" # expected to print "in class func"
class(reh)
[1] "registration"
Я действительно ожидал вызова специфической для класса функции setrecord.classset.признателен, если кто-нибудь может указать, что я пропускаю в этом.