Сделать `==` универсальной функцией в R

Я хотел бы сделать == универсальная функция.

Когда я бегу: setGeneric("==")определение не меняется:

> `==`
function (e1, e2)  .Primitive("==")
> setGeneric("==")
[1] "=="
> `==`
function (e1, e2)  .Primitive("==")

И когда я звоню setgeneric("`==`")Я получаю следующую ошибку:

> setGeneric("`==`")
Error in setGeneric("`==`") : 
  must supply a function skeleton for ‘`==`’, explicitly or via an existing function

Я могу определить == функция с:

`==` <- function(x,y) 42;

И тогда я могу использовать setGeneric в теме. Но тогда мне пришлось бы поставить тело оригинала == там, который кажется неуклюжим.

Так есть ли способ сделать == быть универсальным в S4?

1 ответ

Решение

Благодаря ответу MrFlick:

Оказывается, что == уже является общим (реализовать в C). Так что вам не нужно звонить setGeneric,

Скорее, вы можете просто использовать setMethod,

setMethod("==",
          c(e1="Class1",e2="Class2"),
          funciton(e1,e2) { .... })
Другие вопросы по тегам