> On Apr 24, 2018, at 12:48 PM, Sven Barth via fpc-pascal 
> <fpc-pascal@lists.freepascal.org> wrote:
> 
> Because that is how helper currently work. Extending it with a new feature 
> will not change that. 
> 

I made an example to see how this would look. What’s the problem with “last in 
wins” like seen below? Seems pretty straightforward to me. 

type
        TClassA = class
                procedure DoThis; virtual;
        end;

type
        TClassB = class (TClassA)
                procedure DoThis; override;
        end;

type
        TClassHelper_A1 = class helper for TClassA
                procedure DoThis; // overloads TClassA.DoThis
        end;

type
        TClassHelper_A2 = class helper for TClassA
                procedure DoThis; // overloads TClassHelper_A1.DoThis
        end;

type
        TClassHelper_B1 = class helper for TClassB
                procedure DoThis; // overloads TClassB.DoThis
        end;

var
        classA: TClassA;
        classB: TClassB;
begin
        classA.DoThis; // calls TClassHelper_A2.DoThis
        classB.DoThis; // calls TClassHelper_B1.DoThis



Regards,
        Ryan Joseph

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

Reply via email to