antlr3

    0热度

    1回答

    如果我有我的输入消息: 名IS(乔恩,TED)IS NOT(彼得); 我想这个AST: name | |-----| IS IS NOT | | | Peter |----| Jon Ted 但我收到: name | |-----------------| IS IS NOT

    1热度

    1回答

    以下语法未能区分否定和减法操作。它完全忽略了否定操作。 我认为这是因为存在歧义而发生的...... negAtom与OPERATOR multOp非常相似。我如何重写我的语法来兼容否定和减法,同时保持运算符的乘法和除法优先级? grammar Expr.g4 op: multOp (OPERATOR multOp)*; multOp: negAtom (MULT_OPE

    1热度

    1回答

    我正在开发的当前项目仅限于使用antlr 3.5.2,但我想使用StringTemplate 4的特性集来生成代码。 antlr 3.5.2能生成一个使用StringTemplate 4的java treewalker吗? (如树语法与输出=模板导致与ST的Java文件*引用而不是StringTemplate的*)

    0热度

    2回答

    我有以下问题: 我的ANTLR 3语法编译,但我简单的测试程序不起作用。语法如下: 语法Rietse; options { k=1; language=Java; output=AST; } tokens { COLON = ':' ; SEMICOLON = ';' ; OPAREN = '(' ; CPARE

    0热度

    1回答

    我使用ANTLR3 C版的文字,语法片段是这样的: a_cmd : sub_cmd+ 'abc' (sub_cmd)? ; 现在我需要把所有的第一sub_cmd的全部文本,反复一。我试着这样做: a_cmd : (sc1=(sub_cmd+)) 'abc' (sub_cmd)? {add_text($sc1.$text)} ; 但我得到的gcc编译错误:

    1热度

    1回答

    我想写一本语法来处理二进制数,并计算它们的值: grammar T; options { backtrack=true; } prog : (b2 = binarynum NEWLINE)+ EOF {System.out.println($binarynum.value);} | b1 = binarynum EOF {System.out.prin

    1热度

    1回答

    我正在使用this ANTLR 3 grammar和ANTLRWorks来测试该语法。 但我不明白为什么我的输入文本的某些部分被省略。 我想重写这个语法并在AST/CST中显示源文件(输入)的每个元素(lparen,keywords,分号,..)。 我试过了一切,但没有成功。有经验的人可以帮助我吗? 分析树:

    3热度

    1回答

    我试图配置ANTLR和NetBeans与构建XML,我跟着http://wiki.netbeans.org/AntlrInNetBeansJavaApplication 教程,但是当我清理并生成项目中,我得到这样错误 错误:org.antlr.Tool 我设置类路径找不到或加载主类:SET CLASSPATH = .; C:\ Users \用户BayDebrecen \下载\ ANTLR-4.2

    1热度

    1回答

    你好,我试图建立一个简单的词法分析器来标记行以';'开头,字符。 这是我的词法语法: lexer grammar TestLex; options { language = Java; filter = true; } @header { package com.ualberta.slmyers.cmput415.assign1; } IR :

    2热度

    2回答

    我修改了[Porcelli]给出的PLSQL解析器(https://github.com/porcelli/plsql-parser)。我正在使用这个解析器来解析PlSql文件。成功解析后,我正在打印AST。现在,我想编辑AST并用编辑后的信息打印出原始的plsql源文件。我怎样才能做到这一点?我怎样才能从AST获得源文件的评论,换行和空白。另外,格式也应该保留为原始文件。对此的任何主角都会有所帮