A small question default values in tmplate-functions
Gary Willoughby
dev at nomad.so
Tue Jan 28 01:03:34 PST 2014
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");
}
More information about the Digitalmars-d-learn
mailing list