Есть ли способ определить, что происходит, когда аргумент метода отсутствует или NULL ?
В приведенном ниже примере я Мне нравится вызывать одну и ту же функцию независимо от того, набираю ли я foo ()
или foo (NULL)
. Конечно, я знаю, что у меня может быть метод setMethod ("foo", "NULL", function (x) foo ())
, но это репликация кода и возможный источник ошибок.
Спасибо !
setGeneric("foo",function(x) standardGeneric("foo"))
setMethod("foo","numeric",function(x) "numeric")
setMethod("foo","NULL",function(x) "NULL")
setMethod("foo","missing",function(x) "missing")
R> foo(1)
[1] "numeric"
R> foo()
[1] "missing"
R> foo(NULL)
[1] "NULL"