import std.meta; import std.range;
string join(Fields...)() { enum f(size_t i) = __traits(identifier, Fields[i]);return staticMap!f(Fields.enumerate).join('\n'); // does not compile because of .enumerate
} void main(string[] args) { string r = join!(int, float)(); } How to make it compile?