反箭头语法

Antlr Arrow Syntax

我在 Antlr 中找到了这个语法 parser for bash:

file_descriptor
    :   DIGIT -> ^(FILE_DESCRIPTOR DIGIT)
    |   DIGIT MINUS -> ^(FILE_DESCRIPTOR_MOVE DIGIT);

-> 语法有什么作用?

它叫什么我可以google阅读它?

'Definitive Guide to Antlr4' 只有一页。它指的是 "lexer command",但它从不命名运算符。书中的用法与 bash 解析器中的用法不同。

在 ANTLR3 中,-> 用于解析器规则并表示 tree rewrite rule,在 ANTLR4 中不再支持。

在 ANTLR4 中,-> 用于词法分析器规则,与旧的 v3 功能无关。