On Monday, 27 January 2014 at 19:56:05 UTC, Uplink_Coder wrote:
Hello,

Suppose I have the following function

auto veryStableAPI(string parameter,VaraiadicParams...)() {
    // do something very slow and stable;
 ....
}

auto experimentalReplacement(string parameter,VaraidcParams ...)() {
 // do the same thing very fast and dangerous
}

is the following

auto veryStableAPI(bool brave=false, string parameter,VaraiadicParams...) {
 static if (!brave)
     // do something very slow and stable;
 else
     // do the same thing very fast and dangerous
}
valid according to spec ?

import std.stdio;
import core.vararg;

auto veryStableAPI(bool brave = false)(string parameter, ...)
{
        static if (!brave)
        {
                pragma(msg, "I'm not brave");
        }
        else
        {
                pragma(msg, "I'm very brave");
        }
}

void main(string[] args)
{
        veryStableAPI("test");
        veryStableAPI!(true)("test");
}

Reply via email to