seeking advice: possible new @attribute to mark class' default property to avoid alias this ?
someone
someone at somewhere.com
Sun Aug 8 04:51:48 UTC 2021
On Sunday, 8 August 2021 at 04:30:12 UTC, rikki cattermole wrote:
> So a field that will automatically be resolved to as part of
> the behavior of generated toString methods.
No. A default property can be another object altogether. The best
use case I can think of is a default collection for a class such
as lobjComputers.computers in my example.
> That really isn't what alias this is used for commonly. I.e.
I didn't know alias this even existed a month ago so I cannot
comment for what's oftenly used; I just stated that I was pointed
to alias this when I asked for default properties, it worked, but
later on when reading manuals/posts/etc it was obvious alias this
was something wholly different -that's why I got rid of all alias
this on my code, not the least when I learned of Walter's stance
on this one.
> struct ValueReference {
> private {
> SomethingElse* impl;
> }
>
> bool isNull() { return impl is null; }
>
> scope ref ValueType _get() { return impl.thingy; }
>
> alias _get this;
> }
>
> Only the problem is, this also works for classes and whole pile
> of extra cases.
More information about the Digitalmars-d-learn
mailing list