opConcatAll?

Steven Schveighoffer schveiguy at gmail.com
Thu Jul 2 20:26:15 UTC 2020


On 7/2/20 3:28 PM, Nick Treleaven wrote:
> On Thursday, 2 July 2020 at 15:47:39 UTC, Steven Schveighoffer wrote:
>> a ~ b ~ c ~ d
>>
>> will translate to
>>
>> a.opConcatAll(b, c, d)
> 
> Sounds good, although I think multiple other operations beside 
> concatenation could benefit from being intercepted:
> 
> opNary(string op, T...)(T args)
> 
> E.g. perhaps BigInt can avoid one or more reallocations for >2 args. The 
> compiler would try opNary first in that case, and fallback to successive 
> calls to opBinary as now.
> 
> In fact, maybe some types could benefit from intercepting different 
> operations at once:
> 
> opNary(string[] ops, T...)(T args)

That would be awesome, and cover my case!

-Steve


More information about the Digitalmars-d mailing list