Я хотел бы заменить getter/setter для свойств с использованием RTTI.Как изменить свойство delphi Getter/Setter с RTTI?
Я знаю, что вы можете получить доступ к устройству получения с помощью TPropInfo.SetProc/GetProc, и я знаю, что эти поля указывают на разные данные, если свойство использует виртуальные методы, прямой доступ к полям или статические методы.
Я заинтересован в замене правильных сеттеров/геттеров, которые указывают на виртуальные методы с помощью пользовательских виртуальных методов.
TRttiInstanceProperty(RttiProperty).PropInfo^.SetProc := ? // SomeOtherInstance.Setter
TRttiInstanceProperty(RttiProperty).PropInfo^.GetProc := ? // SomeOtherInstance.Getter
Наилучший подход к тому, что вы хотите достичь, вероятно, будет иметь виртуальный геттер/сеттер в первую очередь, а затем использовать перехват виртуальных методов. –