“标识符”关键字的实现状态

时间:2012-01-27 15:36:39

标签: keyword d

使用DMD 2.057,我无法编译以下代码:

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;
}

我收到错误Error: undefined identifier identifier,尽管此关键字已在http://www.d-programming-language.org/traits.html#identifier的文档中明确定义。我也试过__identifier,但我得到了同样的错误。这还没有实现吗?

1 个答案:

答案 0 :(得分:11)

identifier__traits的参数,就像allMembers一样(与该页面上的其他所有内容一样)。