Alle Sonderfälle kann man sicher nicht abdecken, aber jetzt kann man ein altes Property einfach durch ein neues überschreiben...
alt:
Delphi-Quellcode:
iMyBaseIntf = Interface // mehrfache Methoden hier nur zum Test
function _get_BaseProp: string;
procedure _set_BaseProp(aTestS: string);
prop BaseProp:integer; // überschreibt evtl. vorhandene Property sowie Getter und Setter
function _get_BaseProp: Boolean;
procedure _set_BaseProp(aTestB: Boolean);
property BaseProp: Boolean read _get_BaseProp write _set_BaseProp;
end;
neu:
Delphi-Quellcode:
iMyBaseIntf = Interface
function _get_BaseProp: integer;
procedure _set_BaseProp(aValue: integer);
property BaseProp: integer read _get_BaseProp write _set_BaseProp;
end;
Der nächste Schritt soll sein, dass man einfach
BaseProp: integer
in
BaseProp: Boolean
ändern kann und dadurch Getter und Setter im Interface angepasst werden.
Die Klassen werden dann unabhängig von der Ausgangssituation an die aktuelle Interface-Deklaration angepasst.