Найти все функции (включая частные) в пакете
Я знаю ls("package:grid")
и find.funs("package:grid")
в mvbutils
, но, судя по всему, ни один из них не может найти неэкспортируемые функции и методы, доступные только внутри или с помощью :::
или getAnywhere
.
Мне нужно было указать файлы в каталоге /R
исходного пакета и использовать ls()
в чистой глобальной среде, но должен быть лучший способ, нет?
Ответы
Ответ 1
вы можете использовать asNamespace
:
> methods(cbind)
[1] cbind.data.frame cbind.grobGrid cbind.ts*
Non-visible functions are asterisked
> r <- unclass(lsf.str(envir = asNamespace("stats"), all = T))
> r[grep("cbind.ts", r)]
[1] ".cbind.ts" "cbind.ts"
cbind.ts
в пакете stats
невидим, но можно найти в envir = asNamespace("stats")
.
Ответ 2
Это, кажется, что-то вроде многолетних здесь.
Если это однострочные вы после этого, то это должно быть соперником (credit @Joshua):
ls(getNamespace("grid"), all.names=TRUE)
(Ссылка связана с вопросом, который был задан после вышеупомянутого, но тесно связан).
Как grid
является базовым пакетом, и я еще не перешел на R 3... Я получаю 756 функций с версией 2.15.1. против 503 из решения unclass
.