R paketini oluşturmak için devtools
kullanıyorum ve son kullanıcılar tarafından görülebilecek şekilde tasarlanmamış bazı işlevler var. Ancak, bu işlevler, C kodlarının .Call
tarafından çağrılmasını içerdiğinden, otomatik olarak .Rd dosyaları için fonksiyonun üstünde @useDynLib
yazmam gerekiyor. Bu şekilde, paketi oluşturduğumda, bu işlevler için @export
'U dahil etmedim bile, bunlar yine de yardım belgesinde görünmüyorlar ... bu işlevleri belgelenmiş olsalar bile bastırmak için bir yol var mı? Teşekkürler!R paketi tarafından R paketindeki işlev yardım belgesini gösterme1
10
A
cevap
19
Hadley'nin yorumlarına göre, @keywords internal
işlevini kullan, işlevi son kullanıcılar tarafından görünmez hale getirecektir. Detaylar devtools
'un wiki sayfalarında here bulunabilir.
8
Kabul edilen yanıtta bağlantılı olan wiki artık @keywords internal
(Nisan 2016 itibariyle) üzerinde tartışıyor.
# 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)
}
Anahtar bitleri: @export
içermez ve sadece paketin başına bir `useDynLib` beyana ihtiyacımız @keywords internal
+0
Bu, yarım saattir aradığı şey. Teşekkürler @ arvi1000 – Veera
dahil birisiniindirirsiniz bir örnek görmek için durumda yararlı olur. – hadley
@hadley: teşekkürler, bunu düzeltdim ... ama yine de @ export'u olmayan işlevler, son kullanıcılara görünmesini istemediğim yardım belgesinde. .Rd dosyaları üreten "bastırmak" için herhangi bir yöntem? – alittleboy
Rotatör yorumları kullanmıyor musunuz? – hadley