1 package net.sourceforge.pmd.rules; 2 3 import net.sourceforge.pmd.AbstractRule; 4 import net.sourceforge.pmd.ast.ASTClassOrInterfaceDeclaration; 5 6 public class FooRule extends AbstractRule { 7 8 public Object visit(ASTClassOrInterfaceDeclaration node, Object data) { 9 /* 10 System.out.println("Visiting " + node.getImage()); 11 ClassScope scope = node.getScope().getEnclosingClassScope(); 12 Map decls = scope.getVariableDeclarations(); 13 for (Iterator i = decls.keySet().iterator(); i.hasNext();) { 14 VariableNameDeclaration variable = (VariableNameDeclaration)i.next(); 15 if (variable.getDeclaratorId().jjtGetParent().jjtGetParent() instanceof ASTFieldDeclaration) { 16 System.out.println("Found a field, name is '" + variable.getImage() + "'"); 17 } 18 } 19 */ 20 return super.visit(node, data); 21 } 22 23 }