2013-08-31 22 views
8

Używanie dokumentacji roxygen2 z devtools document funkcja automatycznie generuje pole Collate: w OPISIE PAKIETU, niezależnie od tego, czy konieczne jest załadowanie plików biblioteki paczek w określonej kolejności.Jak wskazać kolejność sortowania w Roxygen2?

Pracuję nad pakietem z wiązką metod S4 i chcę mieć pewność, że definicje klas są ładowane przed metodami lub innymi klasami z nich korzystającymi, co rozumiem, że mogę zrobić z listą Collate, ale ja ' m nie wiem, jak to wskazać w formacie dokumentacji roxygen2.

Odwołanie roxygen2 manual odnosi się do znacznika @include, ale wygląda na to, że może zawierać kod w dokumentacji, na przykład w celu dodania przykładów zewnętrznych za pomocą flagi @examples. Czy można to wykorzystać do określenia kolejności sortowania dla metod?

+0

Jeśli sortowania pole jest już w OPISU roxygen2 nie generuje go. Powiedziałbym więc, że musisz zrobić zamówienie, które chcesz i powinno być szanowane. (Myślę, stąd komentarz do odpowiedzi). –

+0

Byłoby miło wiedzieć, czy moja interpretacja @import jest poprawna. Z pewnością dobrze byłoby, gdyby funkcja obliczała kolejność sortowania z listy zależności plików, a nie ręcznie. – cboettig

+0

import służy do importowania pakietu. Jest to podobne do wymieniania pakietu w sekcji Depends, z tym że jest znacznie czystszy, ponieważ nie zanieczyszcza przestrzeni nazw użytkownika. – Dason

Odpowiedz

13

Znacznik include służy do stwierdzenia, że ​​jeden plik wymaga innego. (Nazwa może nie być najlepszym wyborem, ale takie jest życie). Jeśli chcesz się upewnić, że plik B zostanie wczytany przed plikiem A, upewnij się, że w przypadku A. Roxygen zajmie się uporządkowaniem pola sortowania w celu spełnienia ograniczeń.

+0

genialny, więc zawiera to, czego potrzebuję! – cboettig

3

prostu zorientowali się, że jeśli dodać @include oświadczenie w górnej części pliku R, będzie to kolidować z następnego bloku dokumentacji roxygen2 chyba śledzić go z np NULL

#' @include something.R 
NULL 

#' Documenting a function 
#' 
#" It does something... 
#' 
#' @param ... 
#' 
Powiązane problemy