记录定义同名函数的包
Documenting a package that defines a function with the same name
我正在编写一个名为 foo
的程序包,它定义了一个名为 foo
的 S3 class 以及各种 S3 方法。我写了一个构造函数foo()
,returns 一个foo
对象。在包之后命名class,在class之后命名函数似乎很实用,我希望:
package?foo
将调出软件包帮助页面。
?foo
和 ?foo::foo
将调出功能帮助页面。
但是发生的事情是:
package?foo
和 ?foo
都会调出软件包帮助页面。
- 仅
?foo::foo
调出功能帮助页面。
有没有办法为包和函数提供相同的名称来产生我想要的行为?
目前我有一个这样的文件foo_package.R
:
#' The foo package
#'
#' A very useful package.
#'
#' @docType package
#' @name foo
NULL
和这样的文件 foo.R
:
#' The foo function
#'
#' A very useful function.
#'
#' @param x A data frame.
#' @return A foo object.
#' @export
foo <- function(x) {
structure(x, class = c("foo", "data.frame"))
}
感谢任何提示...
按照@MrFlick 评论中的 second link,它指向 vignette("rd")
中“Packages”下的文本,我能够得到预期的行为。
foo.R
没有变化,但是 foo-package.R
现在是:
#' The foo package
#'
#' A very useful package.
#'
#' @docType package
#' @keywords internal
#' @aliases foo-package
"_PACKAGE"
现在,如愿:
package?foo
和 ?"foo-package"
调出软件包帮助。
?foo
和 ?foo::foo
调出函数帮助。
我正在编写一个名为 foo
的程序包,它定义了一个名为 foo
的 S3 class 以及各种 S3 方法。我写了一个构造函数foo()
,returns 一个foo
对象。在包之后命名class,在class之后命名函数似乎很实用,我希望:
package?foo
将调出软件包帮助页面。?foo
和?foo::foo
将调出功能帮助页面。
但是发生的事情是:
package?foo
和?foo
都会调出软件包帮助页面。- 仅
?foo::foo
调出功能帮助页面。
有没有办法为包和函数提供相同的名称来产生我想要的行为?
目前我有一个这样的文件foo_package.R
:
#' The foo package
#'
#' A very useful package.
#'
#' @docType package
#' @name foo
NULL
和这样的文件 foo.R
:
#' The foo function
#'
#' A very useful function.
#'
#' @param x A data frame.
#' @return A foo object.
#' @export
foo <- function(x) {
structure(x, class = c("foo", "data.frame"))
}
感谢任何提示...
按照@MrFlick 评论中的 second link,它指向 vignette("rd")
中“Packages”下的文本,我能够得到预期的行为。
foo.R
没有变化,但是 foo-package.R
现在是:
#' The foo package
#'
#' A very useful package.
#'
#' @docType package
#' @keywords internal
#' @aliases foo-package
"_PACKAGE"
现在,如愿:
package?foo
和?"foo-package"
调出软件包帮助。?foo
和?foo::foo
调出函数帮助。