Динамические свойства Objective-C во время выполнения?

Можно ли создать класс Objective-C, который может иметь произвольное количество динамических свойств во время выполнения?

Я хочу иметь возможность звонитьmySpecialClass.anyProperty и перехватить это внутри моего класса, чтобы иметь возможность предоставить собственную реализацию, которая может затем вернутьNSString (например) во время выполнения с повышением исключения. Очевидно, это все должно компилироваться.

Идеально было бы, если бы я мог ссылаться на свои свойства, используя что-то похожее на новый буквальный синтаксис, например ,mySpecialClass["anyProperty"]

Я предполагаю, что каким-то образом я хочу создать что-то вроде динамического NSDictionary без резервного хранилища CFDictionary, которое выполняет 2 пользовательских метода при получении и установке свойства соответственно, с именем свойства, передаваемым этим методам доступа, чтобы они могли решать, что делать.