Роль export () без аргумента в файле пространства имен - PullRequest
1 голос
/ 05 мая 2019

Я нашел это в файле NAMESPACE для пакета:

export()

Когда я смотрю справочные документы для export(), во всех примерах, которые я нахожу, используется аргумент, например, export(myFunc), и я не могу найти точную справочную страницу для export(). Что будет делать приведенная выше строка?

1 Ответ

0 голосов
/ 06 мая 2019

При документировании функций в пакете обычно используется функция export, подразумевающая, что указанная функция должна быть exported как часть пакета.

NAMESPACE содержит информацию о функциях import, редактируемых из других пакетов, а также о export, редактируемых из пакета, который пишет. Следовательно, в файле NAMESPACE, export(myFunc) просто ссылается на функцию, которая будет частью пакета. В настоящее время он обычно не генерируется вручную и выполняется с roxygen2. Пустой export() может быть ошибкой проектирования , поскольку в руководстве указано :

Экспорт указывается с использованием директивы экспорта в файле NAMESPACE. Директива вида экспорт (ф, г) указывает, что переменные f и g должны быть экспортированы. (Обратите внимание, что имена переменных могут быть в кавычках и зарезервированных словах и нестандартных именах, таких как [<-. дроби должны быть.) </p>

Для большей интуиции посмотрите на ошибку, возникающую при попытке использовать функцию, не export ed как часть пакета.

stats::group_by

Ошибка: 'group_by' не является экспортированным объектом из 'пространства имен: статистика'

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...