首页 > 解决方案 > JavaCC 中的方括号是做什么用的

问题描述

当我在方括号内有一个非终端时,JavaCC 中的人,例如:

void NonTerminal: {}
{
    [OtherNonTerminal()]
}

void OtherNonTerminal: {}
{
    <TOKEN> [<OTHERTOKEN> OtherNonTerminal()]
}

它周围的方括号是什么意思?

标签: javarecursioncompiler-constructionjavacc

解决方案


[OtherNonTerminal()]相同(OtherNonTerminal())?,表示OtherNonTerminal可选。也就是说,NonTerminal可以匹配OtherNonTerminal或不匹配。


推荐阅读