new DIP47: Outlining member functions of aggregates

Andrej Mitrovic andrej.mitrovich at gmail.com
Sat Sep 7 13:41:14 PDT 2013


On 9/7/13, Adam D. Ruppe <destructionator at gmail.com> wrote:
> pragma(mangle, A.foo.mangleof)
> void foo_impl(A _this) {}

It's cute, but it it doesn't allow you to e.g. implement constructors
outside the class. It also doesn't allow you to call a 'super' method
without explicitly naming the class. E.g. with the above you can't do:

_this.super.foo();

You would have to change it to:

_this.ExplicitClassName.foo();


More information about the Digitalmars-d mailing list