xxxxxxxxxx
import std.experimental.all;
void main()
{
enum needles = [
["dub+", "RegistryPackageSupplier"],
["mvn+", "M2RegistryPackageSupplier"],
];
string url = "mvn+";
switch (url.startsWith(aliasSeqOf!(map!(a => a[0])(needles))))
{
foreach (uint i, el; aliasSeqOf!needles)
case i + 1:
mixin("writeln(`new " ~ el[1] ~ "(URL(url[" ~ el[0].length.to!string
~ " .. $]))`); return;");
default:
"default".writeln;
}
}