R包开发 - 函数别名

时间:2012-01-30 22:06:25

标签: r package

我正在开发一个R包,我想设置一些函数别名,例如如果我已经定义了一个名为foo的函数,我希望它也可以在bar符号下使用。请注意,我知道@alias标记,但这不是我想要的。我应该创建一个新文件(可能是aliases.R)并将所有别名放在那里吗?

2 个答案:

答案 0 :(得分:33)

您可以在定义bar时定义foo

foo <- bar <- function(x, y, z) {
  # function body goes here
}

答案 1 :(得分:1)

我找到了这个答案,因为还遇到了一个问题,即foo <- bar <- function(x)...因为我正在使用bar而无法导出royxgen2。我直接进入royxgen2源代码,找到了他们的方法:

#' Title
#'
#' @param x 
#'
#' @return
#' @export
#'
#' @examples
#' foo("hello")
foo <- function(x) {
    print(x)
}

#' @rdname foo
#' @examples bar("hello")
#' @export
bar <- foo

这将自动执行三件事:

  1. 添加bar作为foo的别名(因此无需使用@alias标签)。
  2. bar添加到?foo用法部分(因此无需添加@usage标签)。
  3. 如果为别名提供@examples(请注意复数),则会将示例添加到?foo