Я строю простой пакет R с множеством вспомогательных функций. Одна из основных функций использует много вспомогательных из них, как, например:Как я могу использовать функцию внутри R-пакета, который не был экспортирован?
....
#'@ description
#'@ param
#'@ export
...
mainfunction1 <- function(param1,...,auxiliaryfunction){
# Do some stuff
b <- auxiliaryfunction(param2) + c
return(b)
}
...
#'@ description
#'@ param
auxiliaryfunction1 <- function(param5,param6,...){# do stuff}
Основная функция должна использоваться конечным пользователем, как например:
result1 <- mainfunction1(param1, param2, auxiliaryfunction1)
Проблема заключается в том, что, когда пакет он никогда не находит вспомогательные функции, если они не экспортируются, однако я бы хотел, чтобы они не были доступны конечному пользователю или, по крайней мере, не позволили избежать ошибки пользователя, обратившись к пространству имен пакетов.
Как это сделать? Должен ли я экспортировать вспомогательные функции?
Да, но пользователь должен иметь возможность выбрать, пропускание имени вспомогательной функции, вспомогательные функции для использования в основной функции .. – mickkk
@mickkk Затем вам все равно нужно экспортировать вспомогательные функции или использовать инструкцию 'switch()'. – Thomas