antlr3

    1

    1답변

    ANTLR 렉서 규칙 디자인 를 소모 : 허용 문자를 포함 대문자, 소문자, 숫자, 공간, 하이픈 문자 미 정착 길이 (길이가 2 자 이상이어야 함) 토큰은 하나 이상의 공백 또는 하이픈을 포함해야합니다. 토큰은 대문자로 시작하고 끝나야합니다. lowerc ase, 숫자, 공백 또는 하이픈 문자 (공백으로 시작하거나 끝날 수 없음) 아래의 문법에서 ANTL

    0

    1답변

    현재 문자열 (단일 변수 'x'의 함수)을 입력으로 사용하여 해당 함수의 미분을 출력하는 응용 프로그램을 작성하고 있습니다. 프로그램의 후반부는 현재 문제가 아니며 문제가되는 것은 문자열에서 함수를 "읽는"것뿐입니다. ANTLRv3을 사용하여 C 목표를 달성하려고 노력하고 있지만 작동시키지 못합니다. 현재 "antlr3.h"헤더 파일이 없습니다. 필자는 어

    1

    1답변

    이 오류하게 내 문법의 일부입니다 expr : func_name '(' constant (',' constant)* ')' ; constant : '"' (~'"')* '"'; WS : (' '|'\t')+ {skip();} ; 그리고 오류가 텍스트의이 부분에 관한 것입니다 : ANTLRWorks의 인터프리터가 나에게 다음 잎을 줄

    2

    1답변

    나는 antlr을 처음 사용하며 DSL에 대한 antlr 문법을 작성하고 있습니다. 나는 그것을 처리하기 위해 공백을 건너 뛰었습니다. 그러나 나는 방식으로 여기에 달성하고 싶다 흰색 뒤덮여 버렸지 가지가있을 수 있습니다 내 문법이 특정 토큰을 선택하려는 선택적으로 케이스로 공간을을 가지고 토큰 SECATTR 이된다 후행 및 spaces.That을 선도하여

    3

    1답변

    나는 문법을 컴파일하고 ANTLR4에서 작동 얻기 위해 노력하고있어. 문법은 ANTLR3 용으로 작성되었으며 많은 컴파일 오류가 발생합니다. 다음은 그 중 하나입니다 syntax error: '->' came as a complete surprise to me while looking for rule element 이 내가 -> 운영자가 ANTLR4에

    -2

    2답변

    ANTLR에 공급 될 때 두 파일이 CPPParser 및 CPPLexer처럼 생성되는 C++ 문법 파일 (EX : CPP_grammar.g)이 ANTLR의 작동 방식입니다.하지만 내 질문은 - ---- C++ 문법의 변경을 통해 Java 특정 JAVA 파서 및 JAVA Lexer 클래스를 얻을 수있는 방법이 있습니까? 감사 @zakaza :이 바보 의심의

    2

    2답변

    [Porcelli] (https://github.com/porcelli/plsql-parser)에 의해 주어진 PLSQL 파서를 수정했습니다. 이 파서를 사용하여 Plsql 파일을 구문 분석합니다. 구문 분석이 성공적으로 끝나면 대서양 표준시를 인쇄합니다. 이제, AST를 편집하고 원래의 plsql 소스를 편집 된 정보로 다시 인쇄하려고합니다. 이것을 어떻

    0

    1답변

    파서와 대서양 표준시가 있습니다. 이제 Treewalkergrammar가 필요합니다. AST에는 "="토큰이 있습니다. Treewalker는에서 "="토큰을 찾아야한다 : "="상위 토큰 "="는 또는, 컴파일러는 "numericExpression"로보고 그것이 알게해야하지만 relationalExpression : (numericExpression) (

    1

    1답변

    확장 나는 그래서 내가 만든이 재 작성 규칙에 시도 다른 토큰 토큰 '플러스'와 '마이너스'를 변경할 ANTLR3 num_addition : num_multi ((plus^|minus^) num_multi)* ; 에 표현이있다. num_addition : num_multi (plus num_multi)* -> ^(num_mul

    1

    1답변

    가 grammar CastModifier; tokens{ E='='; C='=()'; Lp='('; Rp=')'; I = 'int'; S=';'; } compilationUnit : assign+ EOF ; assign : '=' Int ';' | '=' '(' 'int' ')' Int ';'