2012-12-04 2 views
2

그래서 나는 더 문으로 이어질 수 statement에 대한 규칙이 있습니다ANTLR 모호한 참조 - 출력을 얻는 방법?

statement returns[String txt] 
    : '{'{ 
      $txt="{"; 
     } 
     (statement{ 
      $txt+=$statement.txt; 
     })* 
     '}'{ 
      $txt+="}"; 
     } 
    | ... //more rules // ... 
    ; 

내가

참조 $ 문이 모호 무엇입니까를; rule 문은 규칙을 둘러 싸서 프로덕션에서 참조됩니다 (포함 규칙을 가정 할 때)

그러나 해결 방법은 알 수 없습니다. 어쨌든 난 statement 부모 statement의 반환 txt가 필요 ANTLR 말할 필요합니다. 당신이 $statement을 사용하는 경우 규칙 자체, 또는 (...)* 내부 statement을 의미하는 경우, ANTLR 모르는

답변

2

: 저를 도와주세요. 이 같은

시도 뭔가 :

statement returns[String txt] 
    : '{'{ 
      $txt="{"; 
     } 
     (s=statement{ 
      $txt+=$s.txt; 
     })* 
     '}'{ 
      $txt+="}"; 
     } 
    | ... 
     ; 
+0

바트, 난 이미 당신이 최고,하지만 내가 한 번 더 그것을 말하고 당신에게! 건배 :) –

+0

나는 결코 최고는 아니지만 어쨌든 고맙습니다. 물론 환영합니다. –

관련 문제