如何在包中添加中缀函数?

时间:2019-01-22 10:26:49

标签: r package documentation infix-notation

我想在程序包中添加一个中缀函数,但是%%挑战了我。

我找到了this solution,但不幸的是,它并没有说明应将export("%IN%")行确切地添加到何处。我也没有从that的问题中得到任何启发。由于问题已有五年之久,所以我决定提出一个新问题。

考虑与第一个链接的问题相同的功能。

"%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"的文件保存到我的软件包目录R的{​​{1}}文件夹中。

然后在X中运行以下代码行

setwd("./X")

(我从there获得library(digest) R.utils::reassignInPackage("digest", "digest", mydigest) roxygen2::roxygenize() 的地方)。

在终端的最后,我用mydigest创建一个包。

那么,R CMD build X行到底要添加到哪里?

1 个答案:

答案 0 :(得分:0)

根据评论,诀窍是按以下顺序进行:

  1. 照常编写函数的 item_name field_id field_value Deck Credit 0a0e2ddf-2a38-4739-9a52-000f9698 Serialize One, Two, Three One, Two, Three 0.25 文件,将其命名为任意
  2. 运行*.R
  3. 在包文件夹中,通过手动添加一行roxygenize()来编辑生成的NAMESPACE文件
  4. 在终端机上运行export("%IN%")
  5. 也许更新版本号
  6. 安装