Static ternary if
Gorge Jingale via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Mon Jul 25 15:57:05 PDT 2016
On Monday, 25 July 2016 at 22:27:11 UTC, Cauterite wrote:
> On Monday, 25 July 2016 at 02:15:12 UTC, Gorge Jingale wrote:
>> Is there a static ternary if?
>>
>> (A == B) ? C : D;
>>
>> for compile type that works like static if.
>
> You can pretty easily make your own;
>
> template staticIf(bool cond, alias a, alias b) {
> static if (cond) {
> alias staticIf = a;
> } else {
> alias staticIf = b;
> };
> };
>
> The drawback is that there's no 'short-circuiting'; a and b are
> both evaluated.
Cool, that would work. I don't think the lazy evaluation is a
problem at compile time? Just makes for longer times, but should
be pretty minuscule.
More information about the Digitalmars-d-learn
mailing list