1
이것은 인터넷의 어딘가에있는 잘 알려진 예제 중 하나가되어야합니다.하지만 찾을 수없는 것 같습니다.xtext : 표현식/요소/용어 문법
저는 XText를 배우려고하고 있습니다. 계산기 표현 파서가 좋은 시작이라고 생각했습니다. 하지만 내 문법 구문 오류를 받고 있어요 :
Expression:
Term (('+'|'-') Term)*;
Term:
Factor (('*'|'/') Factor)*;
Factor:
number=Number | variable=ID | ('(' expression=Expression ')');
나는 표현 및 용어 라인이 오류가 발생합니다 :
는Multiple markers at this line
- Cannot change type twice within a rule
- An unassigned rule call is not allowed, when the 'current'
was already created.
무슨 준다? 이 문제를 어떻게 해결할 수 있습니까? 그리고 언제 문법에 대 Rule
항목이 있습니까?
매우 도움이됩니다. 이 '{Plus.left = current}'구문이 의미하는 것을 설명하는 참조를 가르쳐 주시겠습니까? –
솔직히 모르겠지만 전에 xtext를 사용해 본적이 없습니다. 그러나 그것은 파스 트리를 구성하는'Plus'라는 인터페이스를 생성합니다. .left는 현재 토큰을 할당 된 동작의 왼쪽 부분에 연결합니다. http://www.eclipse.org/Xtext/documentation/2_0_0/020-grammar-language.php#syntax – Dervall