当我在方括号内有一个非终端时,JavaCC中的家伙,例如:
void NonTerminal: {}
{
[OtherNonTerminal()]
}
void OtherNonTerminal: {}
{
<TOKEN> [<OTHERTOKEN> OtherNonTerminal()]
}
它周围的方括号是什么意思?
[OtherNonTerminal()]
与(OtherNonTerminal())?
相同,意味着OtherNonTerminal
是可选的。也就是说,NonTerminal
可以匹配OtherNonTerminal
,也可以不匹配。