例如B && C 树应该像这样 (A || B) && (C)。这应该是这样的。我尝试过,但每次都额外||像这样添加 A ||乙|| && C. 这每次都会生成错误的树。
代码我这样做
LOOKAHEAD((simpleTerm())+)
(
simpleTerm()
{
jjtthis.setValue("||");
}
)+
*注意 simpleTerm 可以是 <STRING> 或 <QuotedString>*
如何插入 ||符号进入树,因此它形成像这样的树 A || B&&C。?
如何使用 javacode 将 token 图像插入到树中?
最佳答案
尝试如下操作
void Conjunction() #void :
{ }
{
Disjunction()
( "&&"
Disjunction()
{jjtThis.setValue( "&&" );} #BinOp(2)
)*
}
void Disjunction() #void :
{}
{
SimpleTerm()
(
SimpleTerm()
{jjtThis.setValue( "||" );} #BinOp(2)
)*
}
void SimpleTerm() :
{Token t ;}
{
(t=<STRING> | t=<QUOTEDSTRING>)
{jjtThis.setValue( t.image ) ;}
}
关于JAVACC && JJTree (.jjt) 插入 ||解析两个标记时将符号放入树中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19064360/