【问题标题】:How to replace text in AST (ANTLR) with C#如何用 C# 替换 AST (ANTLR) 中的文本
【发布时间】:2012-12-17 13:31:22
【问题描述】:

谁能帮我解决这个问题。我需要遍历一个抽象语法树来替换 C# 中的所有子文本

【问题讨论】:

    标签: c# antlr3 abstract-syntax-tree


    【解决方案1】:

    我会说CommonTree.Text 属性是为此目的而提供的,但正如您所看到的,该方法实际上什么也没做。 CommonTreeAdaptor.SetText 方法(继承自BaseTreeAdaptor 至少会抛出一个NotSupportedException

    您需要做的是获取与树节点关联的IToken,可能通过调用CommonTreeAdaptor.GetToken。然后您可以设置令牌的IToken.Text 属性,至少对于CommonToken is implemented

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-09
      • 1970-01-01
      相关资源
      最近更新 更多