Сделать R-пакет, который просто загружает другие пакеты и экспортирует все функции

Можно ли сделать R-пакет, который просто экспортирует все функции из других R-пакетов? Есть ли другой способ, чтобы функции в пакете были классифицированы и упорядочены соответственно в руководстве, файлах кода и т. Д.?

1 ответ

Решение

Да, вы можете иметь пакет, который вызывается только для его зависимостей. В качестве яркого примера, теперь архивированный пакет gregmisc, который начинался как огромная коллекция различных функций, был в конечном итоге разбит на отдельные пакеты. Хотя gregmisc все еще был доступен в CRAN, он не содержал никаких функций, только эта функция запуска:

.onAttach <- function(libname, pkgname)
{
  packageStartupMessage(
          "All functionality of the `gregmisc' package has been moved",
          "into the four 'g' packages: gdata, gtools, gmodels, and gplots. ",
          "This package is retained to make it easy to install and load",
          "the full set. Please consider loading these packages directly."
                        )
}

А затем просто имел зависимости от новых отдельных пакетов, описанных в файле DESCRIPTION:

Package: gregmisc
Title: Greg's Miscellaneous Functions
Description: Description: The former gregmisc bundle is a repository
        for a variety of useful functions.  The gregmisc package has
        been split into a set of more focused packages: gdata, gmodels,
        gplots, gtools.  The purpose of this 'new' gregmisc is to
        provide an easy way to access the original combined
        functionality.  To this end, it simply depends on all of the
        new packages so that these will installed/loaded when this
        package is installed/loaded.
Depends: gdata, gmodels, gplots, gtools
Version: 2.1.5
Author: Gregory R. Warnes.
Maintainer: Gregory R. Warnes <greg@warnes.net>
License: GPL-2
Packaged: 2013-06-28 21:48:38 UTC; warnes
NeedsCompilation: no
Repository: CRAN
Date/Publication: 2013-06-29 00:15:57
Другие вопросы по тегам