[英]How to use `package::function()` inside a package when `function` is an infix operator?
[英]How to add an infix function to a package?
我想在包中添加一个中缀函数,但%%
挑战了我。
我找到了此解决方案,但不幸的是,它没有解释应在哪里正确添加行export("%IN%")
。 从这个问题上我也没有任何聪明。 由于问题已有五年之久,所以我决定提出一个新问题。
考虑与第一个链接的问题相同的功能。
"%IN%" <- function(x, table) x & match(x, table, nomatch = 0) > 0
我通常会根据这个粗略的模板向我的包中添加一个新函数,以编写<myfun>_function.R
文件。
#' Title
#'
#' \code{%IN%} does this and that
#' @param x texttext
#' @param table texttext
#' @return texttext
#' @export
#' @examples
#' 1:5 %IN% 1:3
"%IN%" <- function(x, table) x & match(x, table, nomatch = 0) > 0
因此,我将名为"`%IN%`_function.R"
的文件保存到我的软件包目录X
的R
文件夹中。
然后在setwd("./X")
运行以下代码行
library(digest)
R.utils::reassignInPackage("digest", "digest", mydigest)
roxygen2::roxygenize()
(我从那里得到最mydigest
)。
在终端的最后,我用R CMD build X
创建包。
那么,究竟要在export("%IN%")
行添加export("%IN%")
行?
根据评论,诀窍是按以下顺序进行:
*.R
文件,并将其命名为任意 roxygenize()
export("%IN%")
编辑生成的NAMESPACE
文件 R CMD build <package name>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.