On 01/14/11 14:38, Torsten Bonde Christiansen wrote:
> Hi List.
> 
> Is it possible to jump a couple of levels in the inherited hierarchy
> when calling "inherited" on a method?
> 
> A small example of what i'm trying to achieve below (and don't mind the
> incomplete TB class implementation).
> 
> Kind regards,
> Torsten Bonde Christiansen.
> 
> ============================
> 
> TA = class
>   procedure DoSomething; virtual;
> end;
> 
> TB = class(TA)
>   procedure DoSomething; override;
> end;
> 
> TC = class(TB)
>   procedure DoSomething; override;
> end;
> 
> .....
> 
> procedure TA.DoSomething;
> begin
>   ...
> end;
> 
> procedure TC.DoSomething;
> begin
>   inherited TA.DoSomething;  // This is not correct, but exemplifies
> what i'm trying to achieve.
> end;
> 

I *think* I've done this before this way but test it to make sure it works:

procedure TC.DoSomething:
begin
 (Self as TA).DoSomething;
end;

Regards,

Andrew
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to