Я хотел бы, чтобы некоторые классы стали друзьями других классов во время выполнения. Есть ли способ сделать это?
В качестве альтернативы, есть ли способ получить доступ к общедоступным/защищенным/частным иварам объекта во время выполнения - или расширить класс, аналогичный функции категории Objective-C?
Вариант использования здесь заключается в том, что я хотел бы предоставить набору тестов доступ к ivars в классах во время выполнения, но не загрязняя код приложения кодом, специфичным для набора тестов. Платформа тестирования может измениться и будет отличаться в зависимости от платформы развертывания.
Резюме: найдите способ сохранить код приложения чистым и свободным от внешних артефактов фреймворка.