2013-04-09 5 views
10

Używam devtools do budowania pakietu R, a niektóre funkcje NIE są zaprojektowane tak, aby były widoczne dla użytkowników końcowych. Ponieważ jednak funkcje te wymagają wywoływania kodów C przez .Call, muszę napisać @useDynLib powyżej funkcji automatycznego generowania plików .Rd. W ten sposób, gdy budowałem pakiet, nawet NIE zawierałem @export dla tych funkcji, pojawiają się one jednak w dokumencie pomocy ... Czy istnieje sposób na ich wyłączenie, nawet jeśli zostały one udokumentowane? Dzięki!nie wyświetlaj dokumentu pomocy funkcji w pakiecie budynku R autorstwa roxygen2

+1

Trzeba tylko jedną deklarację 'useDynLib' za pakiet. – hadley

+0

@hadley: dziękuję, poprawiłem to ... ale nadal działa bez "@ export" są w dokumencie pomocy, który chciałbym być niewidoczny dla użytkowników końcowych. Dowolna metoda "powstrzymywania" tworzenia plików .Rd? – alittleboy

+1

Nie wolno używać komentarzy roxygen? – hadley

Odpowiedz

19

Zgodnie z uwagami Hadleya, użycie @keywords internal spowoduje, że funkcja będzie niewidoczna dla użytkowników końcowych. Szczegóły można znaleźć here na stronach wiki devtools.

8

Strona wiki powiązana z zaakceptowaną odpowiedzią nie obejmuje już tematu @keywords internal (stan na kwiecień 2016 r.). W przypadku, gdy jest to pomocne dla kogoś, aby zobaczyć przykład:

# 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) 
} 

Kluczowe bitów: nie obejmują @export i zawierają @keywords internal

+0

Tego właśnie szukałem przez ostatnie pół godziny. Dzięki @ arvi1000 – Veera

Powiązane problemy