Есть ли способ сделать что-то похожее на KVC, но использовать имя сообщения в качестве самого ключа? Например, вместо valueForKey:
существует ли способ для объекта отвечать на все сообщения?
Например, скажем, у вас есть документ XML:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE ...>
<employees>
<employee>
<name>Bill</name>
<department>Accounting</department>
</employee>
<employee>
<name>John</name>
<department>Human Resources</department>
</employee>
</employees>
Помимо использования уже доступных NSXMLDocument и co., Был бы способ реализовать некоторую абстракцию, чтобы вы могли сделать:
MyXML *xmlDoc = [[MyXML alloc] initWithContentsOfFile:@"test.xml"];
NSLog (@"%@", [[[xmlDoc employees] first] department]);
[[[xmlDoc employees] first] setDepartment:@"Management"];
Я выбрал XML в качестве примера, но я хочу знать, возможно ли это вообще, и предполагает ли он слишком близкое время выполнения Objective C или поддерживается ли он самим временем выполнения, и как Я хотел бы реализовать что-то вроде этого. Это чисто для экспериментальных целей, и я понимаю, что, вероятно, будут существенные затраты производительности.
EDIT:
Если возможно, я бы хотел избежать существующих структур, таких как Какао, и использовать базовый объект Objective-C Object
.