1

我正在为一个工作项目开发一种简单的脚本语言,我需要创建一个表单的定义语句type name = value。我一直在关注SuperpowerSimpleSql 示例并创建了标记器,它正确地标记了输入。

问题来自为赋值语句创建 TokenListParser。目前解析器被定义为:

public static TokenListParser<AumToken, ShmemWord> ShmemWord =
    from keyword in Token.EqualToValueIgnoreCase(AumToken.Keyword, "ShmemWord")
    from name in Token.EqualTo(AumToken.Keyword)
    from equal in Token.EqualTo(AumToken.Assignment)
    from value in Token>EqualTo(AumToken.Number).Apply(Numerics.HexDigitsUInt64)
    select new ShmemWord(name, value);

并且ShmemWord是一个带有构造函数签名的简单类ShmemWord(string name, ulong value)

到目前为止,我是否正确定义了这个,如何将名称转换为字符串?

4

1 回答 1

1

Token<TKind>ToStringValue()为此规定:

     select new ShmemWord(name.ToStringValue(), value);
于 2018-09-10T06:56:43.153 回答