0
약간 다른 문법의 문제가 있습니다. 하나의 규칙 (거대한 문법)이있는 문법이며 여러 번의 호출이 있습니다. Xtext를 사용하여이 문법을 나타내는 법을 알지 못합니다.이 문법은 요구 사항을 지정하는 언어 인 학업입니다.문법의 왼쪽 재귀 호출 오류 및 번역
내 좌절 시도는 다음과 같습니다 : 기사에서 얻어진 발생하는 문법이다
Relax:
root+=General+;
//nao tinha o tipo boleano
terminal BOOLEAN returns ecore::EBoolean:
'true'|'false'
;
General:
root+=BOOLEAN|STRING|ShallOperator|MayOperator|EventuallyOperator|UntilOperator|BeforeOperator|AfterOperator|InOperator;
ShallOperator:
'shall' elements=General;
MayOperator:
"may" action1=General 'or' action2=General;
EventuallyOperator:
'eventually' element=General;
UntilOperator:
// {General.left=current}'&' right=General;
// ({General.left=current}) 'until' element2=General;
left=General 'until' right=General;
오류 가 발생 "이 규칙 호출 재귀 호출 그래프의 일부입니다" 마지막 줄.
이 오류 외에 문법의 "올바른"부분조차도 올바른 결과를 산출하지 못합니다.
나는 오류를 검색하지만 문제, 난 아직 초보자 해요 이해할 수 없었다, 그래서 나는이 개 질문이 :
가 나는 문법을 번역하는 방법 올바른지를?이 왼쪽 재귀 오류를 해결하는 방법은 무엇입니까?
보너스 질문 : 학습 자료 (공식 문서는 이미 읽었습니다).
어떤 도움을 환영합니다.
감사합니다.