繁体   English   中英

JAVACC && JJTree(.jjt)插入|| 解析两个令牌时,将符号插入树中

[英]JAVACC && JJTree (.jjt) Inserting || symbol into tree when parsing two tokens

例如,AB && C树应类似于(A || B)&&(C)。 这应该是这样的。 我尝试了,但是每次额外|| 像这样添加A || B || && C.这每次都会生成错误的树。

代码我这样做

LOOKAHEAD((simpleTerm())+)

   (
       simpleTerm()
  {
     jjtthis.setValue("||");
   }
   )+

* 注意simpleTerm可以是&ltSTRING&gt或&ltQuotedString&gt *

我如何插入|| 符号变成树,这样就形成树A || B && C.?

如何使用javacode将令牌图像插入树中?

试试下面的东西

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 ) ;}
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM