Utilizzando DMD 2.057, non posso ottenere il seguente codice per compilare:Stato di implementazione di "identificatore" Chiave
import std.stdio;
import std.array;
enum direction
{
test1,
test2,
test3
}
string getDescriptionOnConnect(direction d)
{
string descriptionOnConnect = "Going in direction %dir%";
foreach(s; __traits(allMembers, direction))
{
if (identifier(d) == s)
{
descriptionOnConnect =
replace(descriptionOnConnect, "%dir%", identifier(d));
}
}
return descriptionOnConnect;
}
int main(string[] argv)
{
return 0;
}
ottengo l'errore Error: undefined identifier identifier
, anche se questa parola chiave è chiaramente definito nella documentazione a http://www.d-programming-language.org/traits.html#identifier. Ho anche provato __identifier
, ma ho avuto lo stesso errore. Questo non è ancora stato implementato?
in altre parole usare '__traits (identificatore, d)' –