Maybe just use mixin template?
mixin template f(alias values)
{
static foreach(v;values)
mixin("bool " ~ v ~ " = false;");
}
int main()
{
enum string[] a=["a","b"];
mixin f!a;
return 0;
}
On Monday, 1 April 2019 at 17:32:29 UTC, Andrey wrote:
Hello,
enum Key : string
{
First = "qwerty",
Last = "zaqy"
}
void main()
{
enum decl(alias values1) = q{
static foreach(value; values1)
mixin("bool " ~ value ~ " = false;");
};
enum qqq =
Hello,
enum Key : string
{
First = "qwerty",
Last = "zaqy"
}
void main()
{
enum decl(alias values1) = q{
static foreach(value; values1)
mixin("bool " ~ value ~ " = false;");
};
enum qqq = [Key.First, Key.Last];
mixin(decl!qqq);
}
I don't