Neater enum + version
Jacob Carlborg
doob at me.com
Sun Nov 18 19:30:29 UTC 2018
On 2018-11-18 18:52, Neia Neutuladh wrote:
> On Sun, 18 Nov 2018 17:47:07 +0000, Vladimirs Nordholm wrote:
>> Is there anyway to make it "neater"? Maybe something in one line:
>>
>> enum foo = version (Posix) { "posix" } : { "other" } ;
>
> If you're doing it often:
>
> T ifPosix(T)(T a, T b)
> {
> version (Posix) return a; else return b;
> }
> enum foo = ifPosix("posix", "other");
>
> If it's a one-off thing, though, there's not much you can do.
This can be generalized by passing in the version identifier as a string
and do a string mixin.
--
/Jacob Carlborg
More information about the Digitalmars-d-learn
mailing list