Я в основном ищу противоположность methods(some_function)
, которая возвращает все методы класса, которые существуют для этой функции. Есть ли простой способ поиска всех функций с явным method
для данного класса объектов?
Например, methods(my_func)
возвращает кучу myfunc.classname
значений. Есть ли functions(my_class)
, который будет возвращать все функции с помощью метода func.my_class
?Как найти все функции с методами для данного класса
4
A
ответ
7
Я думаю, вы хотите указать аргумент class
и ничего не generic.function
в methods
. Сравнить
methods(as.matrix)
[1] as.matrix.data.frame as.matrix.data.table* as.matrix.default
[4] as.matrix.dist* as.matrix.noquote as.matrix.POSIXlt
[7] as.matrix.raster* as.matrix.SpatialGridDataFrame* as.matrix.SpatialPixelsDataFrame*
С этим, возвращающий методы для общего класса
methods(class="matrix")
[1] anyDuplicated.matrix as.data.frame.matrix as.data.table.matrix* as.raster.matrix* boxplot.matrix corresp.matrix*
[7] determinant.matrix duplicated.matrix edit.matrix* head.matrix isSymmetric.matrix lda.matrix*
[13] qda.matrix* relist.matrix* subset.matrix summary.matrix tail.matrix unique.matrix
Non-visible functions are asterisked
И это также, кажется, работает для классов S4, а также, например,
methods(class="data.table")
[1] $<-.data.table* [.data.table* [<-.data.table* all.equal.data.table* as.data.frame.data.table*
[6] as.data.table.data.table* as.list.data.table* as.matrix.data.table* dim.data.table* dimnames.data.table*
[11] dimnames<-.data.table* duplicated.data.table* format.data.table* head.data.table* is.na.data.table*
[16] merge.data.table* na.omit.data.table* names<-.data.table* Ops.data.table* print.data.table*
[21] subset.data.table* tail.data.table* transform.data.table* unique.data.table* within.data.table*
0
Я думаю, что вы описываете концепцию самоанализа и отражения (хорошо известную на Java).
сообщение о самоанализе и рефлексии в Java со ссылками здесь: Java introspection and reflection
я не знаю, какие технологии или язык вы используете, но, возможно, вы найдете эквивалент.
Надеюсь, это поможет! До свидания !
Смежные вопросы
- 1. Найти все подклассы данного класса (Android)
- 2. Найти все поменявшие объекты для данного пользователя
- 3. Ошибка в рекурсивной функции/попытка найти все подкаталоги данного каталога
- 4. найти подклассы данного класса в JDK Lib
- 5. Как найти список компонентов для данного класса/пакета Spring Boot?
- 6. Передача экземпляра класса с методами для функции PHP
- 7. Проблемы с методами класса
- 8. Как вызвать все функции с именем, начинающимся с данного префикса?
- 9. Как получить все ресурсы данного класса, связанные с заданным значением
- 10. Как найти все свойства и методы, доступные для данного типа?
- 11. как найти все ярлыки для данного файла в ClearCase
- 12. Как получить все подклассы данного класса в каталоге с Python3?
- 13. Найти все простые множители данного числа
- 14. Как найти все перестановки данного слова в заданном тексте?
- 15. Как найти все имена областей для данного класса в Ruby on Rails?
- 16. Как найти модуль для данного командлета?
- 17. PHP как найти все дочерние узлы данного узла
- 18. Как динамически создавать метод для данного класса в Ruby?
- 19. JQuery: найти все другое содержание значение для данного тега
- 20. Возможно ли найти все поддомены DNS для данного имени домена?
- 21. Быстрое обнаружение супервизора данного класса с дженериками
- 22. Найти все дочерние представления для данного корневого представления рекурсивно
- 23. Как я могу увидеть все функции класса?
- 24. Проблемы с методами класса java
- 25. как найти XPath для данного HTML кода
- 26. как найти ветку для данного лейбла
- 27. Как найти интервальную доступность для данного дистрибутива?
- 28. Как найти соответствующий th для данного td?
- 29. как найти Xpath для ниже данного флажка
- 30. SSRS: Как найти отчеты для данного пользователя?
Спасибо. Это делает работу. –
Теперь это печально: через год я совершенно забыл, что спросил об этом. Благодарим за инструменты поиска SO :-) –