Как я могу наиболее чисто использовать Roxygen2 для документирования вектора в R
Я пишу пакет и использую Roxygen2 для создания документации внутри исходных файлов (и pkgdown для их отображения в качестве веб-сайта).
У меня есть все ключевые экспортируемые функции, документированные - пока все хорошо.
Однако в пакете есть несколько публично экспортированных векторов списка именованных элементов, содержащих объекты, которые я хотел бы задокументировать.
Я мог бы разместить код сверху, как с функциями - но если список или объекты, созданные в списке, являются сложными (что может быть моим - некоторые представляют собой список предложений, например, для использования с блестящей приборной панелью), то это означает, что что документация и код могут легко выйти из синхронизации.
В идеале я хотел бы написать документацию, встроенную в объект, который я документирую - т.е. чередуйте список со строками комментариев, которые затем собираются в окончательный документ.
Кто-нибудь может предложить какие-нибудь изящные способы сделать это? Или рабочий шаблон, который может помочь с этим? Вроде, как бы, что-то вроде:
#' Filter list for MyAwesomeShinyApp
#'
#' Creates a set of filter actions as quosures. The quosures should
#' be inserted into our dplyr::filter query using quasiquotation.
#' The available filters are as follows:
#'
#' @export
myListOfFilters <- list(
#' first_filter sets up a really complicated filter using a function
#' based on the dog's favourite toy.
"first_filter" = reallyComplexFunction(dog, dogToy),
#' second_filter only looks up dogs called Fido.
"second_filter" = rlang::quo(.data[["DogName"]] == "Fido")
)
В этом примере вы можете видеть, как встроенная документация каждого элемента в списке имеет больше смысла, поскольку размер списка масштабируется. Очевидно, этот пример не работает! Вопрос - есть ли способ работы, который разрешает подобное?