1

给定一个 ANTLR Java 语法 - 我将编写什么 Java 源代码来获取 Java 源列表中的方法名称列表?

例如对于以下

public class HelloWorld {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        new HelloWorld().printHelloWorld();
    }

    private void printHelloWorld() {
        // TODO Auto-generated method stub
        System.out.println("Hello World");
    }

}

会回来

main
printHelloWorld
4

1 回答 1

1

基本上,您需要编辑语法文件以添加该功能。找到检测方法的规则,并在其中添加一些代码,将方法的名称添加到解析器正在收集的列表中。然后,在实例化解析器之后,您可以访问方法名称。

你可以在这里看到一个完整的例子( JUnitConverter中使用的 Java 的编辑语法文件(无耻插件)),特别是addMethod方法。

于 2009-11-24T09:34:28.237 回答