Подтвердить что ты не робот

Не показывать файл справки по функции в сборке R-пакета roxygen2

Я использую devtools для сборки R-пакета, и есть некоторые функции, которые НЕ предназначены для видимости конечным пользователям. Однако, поскольку эти функции включают вызовы кодов C с помощью .Call, так что мне нужно написать @useDynLib над функцией автоматической генерации файлов .Rd. Таким образом, когда я создаю пакет, даже я НЕ включал @export для этих функций, они тем не менее отображаются в справочном документе... Есть ли способ подавить эти функции, даже если они были задокументированы? Спасибо!

4b9b3361

Ответ 1

Согласно комментариям Хэдли, использование @keywords internal сделает функцию невидимой для конечных пользователей. Подробности можно найти здесь на страницах wiki devtools.

Ответ 2

Вики, связанные в принятом ответе, больше не обсуждаются @keywords internal (по состоянию на апрель 2016 года). В случае, если кому-то будет полезно посмотреть пример:

# multiplyBy3
#' This is an example of an internal function called \code{multiplyBy3()}
#'
#' Sometimes you want internal functions as part of an R Package built with 
#' RStudio and roxygen2, but you don't want .Rd files created for them
#' or to have them be visible in the help document following the build process
#' 
#' @keywords internal
#'
#' @param base_num The number to multiply by three 
#'
#' @import jsonlite
#'
#' @return Returns a numeric vector
#'
multiplyBy3 <- function(base_number) {
  stopifnot(is.numeric(base_number))
  return(base_number * 3)
}

Ключевые биты: не включать @export и включать @keywords internal