Multiple alias this, what's the hold up?
user1234
user1234 at 12.de
Mon Jun 17 16:18:55 UTC 2019
On Monday, 17 June 2019 at 16:13:07 UTC, rikki cattermole wrote:
> On 18/06/2019 3:58 AM, user1234 wrote:
>> On Monday, 17 June 2019 at 13:48:45 UTC, Mike Franklin wrote:
>>> I think if we had an `opAssignRight` feature (with friends)
>>> we could move the entire implementation of `alias this` to
>>> the library. [...]
>>> Mike
>>
>> At first glance opAssignRight is a really **brilliant** idea 👍.
>> Why do you think that variants would be required ? i += s
>> would work with the single op overload. Maybe it would more be
>> something like
>>
>> T opExtractRight(T){}, with T saying what type is involved in
>> the operation
>>
>> int i = s rewritten as int i = s.opExtractRight!int();
>> i += s rewritten as i += s.opExtractRight!int();
>
> Oh I like this.
> This way it doesn't fight the other operator overloads and can
> be used (with them) only if they fail as-is.
It looks very much like "opCast" actually and a better named is
"opImplicitConv"
because right now the error message for Mike's little example
says "cannot impliclty convert...".
More information about the Digitalmars-d
mailing list