Получить подробную информацию о категориях класса во время выполнения? - PullRequest
8 голосов
/ 06 февраля 2011

В Objective-C, есть ли способ перечислить категории определенного класса во время выполнения?

С помощью функций времени выполнения Objective C я могу получить подробную информацию о методах класса и экземпляра, иерархии классов, переменных экземпляра и т. Д., Но, по-видимому, информация о категории отсутствует

Глядя на F-Script, я вижу, что он не отображает информацию о категориях (на самом деле, он вообще не отображает методы из категорий). С другой стороны, класс-дамп извлекает информацию о категории, но это из двоичного файла, а не во время выполнения.

В objc / runtime.h есть упоминание о структуре objc_category, но это выглядит как частная. Есть ли поддерживаемый способ?

1 Ответ

6 голосов
/ 07 февраля 2011

из "Язык программирования Objective-C" в SDK doc:

Методы категорий могут делать все, что могут делать методы, определенные в собственном классе.Во время выполнения нет никакой разницы.

поддержка структуры objc_category была удалена с помощью современной target-c (ios, 10.5), что делает эту информацию непрозрачной.

Боюсь, вы не можете получить информациюты хочешь.

...