abstract-syntax-tree

    10热度

    5回答

    我有一个从ANTLR Parser Generator for Java派生的AST。我想要做的是以某种方式构造源代码的控制流图,其中每个语句或表达式都是唯一的节点。我知道这个标识必须有一些递归,我想知道你会建议什么是最好的选择,如果ANTLR有一个工具集可以用于这项工作。 干杯, 克里斯 编辑 - 我最关心的是获得来自AST控制流图(CFG)。这样我就可以得到源代码的树形图。为了澄清,源代码和实

    1热度

    2回答

    我正在学习如何为一个项目做一个ASTVisitor,所以我开始使用Eclipse,它有一个全面的API。 我从这个网站下载打包示例项目: http://www.eclipse.org/articles/article.php?file=Article-JavaCodeManipulation_AST/index.html 但我意识到,代码没有main()方法,但我能够运行该程序!有人知道为什么[q

    5热度

    5回答

    我已经阅读了相关的问题,但没有一个似乎直接解决了这个问题。我正在编写一个PHP脚本解释器。我有AST为除了类的所有东西生成适当的节点。处理类与处理函数有点不同,所以我正在寻找如何处理独立的类,并扩展其他类。 我已经看过ANTLR,但是我无法承受这个开销,因为这是针对嵌入式平台的。我在寻找的是理论背后在AST中类的理论,所以它们可以由解释器的执行者部分执行。与这个问题的具体答案良好的联系是肯定的赞赏

    22热度

    2回答

    如何在Eclipse以外的项目中使用java Eclipse抽象语法树? (即不是eclipse插件) 我见过的所有Eclipse AST示例都是针对eclipse插件的。有没有一种方法(例如)使用eclipse AST作为非eclipse项目的项目。

    4热度

    3回答

    鉴于在Eclipse下面的代码: import org.eclipse.jdt.core.dom.AST; import org.eclipse.jdt.core.dom.ASTParser; import org.eclipse.jdt.core.dom.CompilationUnit; public class Question { public static void ma

    1热度

    5回答

    我正在开发一个逆向工程学校项目,该项目需要翻译编译C#项目的操作AST。 我在“将C#代码翻译成AST?”中看到过这篇文章。在这个网站上,但它看起来不像我正在寻找的那个。根据我所知道的,目前C#没有提供像Java一样的库类:http://help.eclipse.org/help33/index.jsp?topic=/org.eclipse.cdt.doc.isv/reference/api/or

    10热度

    2回答

    是否可以通过编程访问javac.exe内部的抽象语法树(AST)?你能提供一个例子吗?

    0热度

    4回答

    除了完成任何真正的工作之外,我还有一个痒。我的痒就是编写一个视图引擎,它可以模仿另一种语言(Template Toolkit/Perl)的模板系统。如果我有时间/去学习一些新的项目,这是其中之一。 我花了很多时间看着CoCo/R和ANTLR,老实说,这会让我的大脑受到伤害,但CoCo/R正在沉入其中。不幸的是,大部分例子都是关于创建一个读取源代码的编译器代码,但似乎没有涵盖如何为模板创建处理器。

    4热度

    3回答

    给定特定类源代码(Java/C#)的行号 - 是否有一种简单的方法来获取它所属的方法的名称? (如果它落在1之内)(假定使用抽象语法树) (这对于将checkstyle的输出限制为触摸的方法很有用)。 我假设你不得不使用抽象语法树做Line# - > MethodName。

    9热度

    3回答

    //创建一个从传递给我们的输入流读取的扫描器 CSLexer lexer = new CSLexer(new ANTLRFileStream(f)); tokens.TokenSource = lexer; // Create a parser that reads from the scanner CSParser parser = new CSParser(tokens); // sta