package ru.csu.stan.java.ast.nodes.handlers; import java.util.LinkedList; import java.util.List; import ru.csu.stan.java.ast.core.TreeWalker; import com.sun.tools.javac.tree.JCTree; import com.sun.tools.javac.tree.JCTree.JCMethodDecl; public class JCMethodDeclHandler extends JCTreeHandler { public JCMethodDeclHandler(TreeWalker walker) { super(walker); } @Override protected void execute(JCTree node) { JCMethodDecl methodNode = JCMethodDecl.class.cast(node); walker.handle(methodNode.name, "nodename.name"); walker.handle(methodNode.mods, "nodename.modifiers"); List<JCTree> resultTypeList = new LinkedList<JCTree>(); if (methodNode.restype != null) resultTypeList.add(methodNode.restype); walker.handle(resultTypeList, "resulttype"); walker.handle(methodNode.typarams, "generics"); walker.handle(methodNode.params, "parameters"); walker.handle(methodNode.thrown, "thrown"); walker.handle(methodNode.body, "nodename.body"); walker.handle(methodNode.defaultValue, "nodename.default_value"); walker.handle(methodNode.sym, "nodename.symbol"); } }