friends with phobos, workaround?

Adam D. Ruppe via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Thu Sep 10 06:19:02 PDT 2015


On Thursday, 10 September 2015 at 08:22:29 UTC, Daniel N wrote:
>   this(string caller = __MODULE__)(int val) if(caller == 
> "std.conv") // Use scoped!Awesome

That's disgustingly.... genius. I'm a bit jealous I didn't think 
of it myself!

One slight problem though: you couldn't call super() from a 
derived class, since the constructor wouldn't even exist due to 
the constraint.

You could just put the hard work in a protected helper function 
though and then child classes call it instead of the super 
ctor....
then you could do a mixin template that forwards to that to kinda 
automate this ctor too.

this is fairly usable!


More information about the Digitalmars-d-learn mailing list