1 /**
2 * BSD-style license; for more info see http://pmd.sourceforge.net/license.html
3 */
4 package net.sourceforge.pmd.dcd.graph;
5
6 /**
7 * Visitor for nodes in a UsageGraph.
8 */
9 public interface NodeVisitor {
10
11 public Object visit(UsageGraph usageGraph, Object data);
12
13 public Object visit(ClassNode classNode, Object data);
14
15 public Object visitFields(ClassNode classNode, Object data);
16
17 public Object visit(FieldNode fieldNode, Object data);
18
19 public Object visitConstructors(ClassNode classNode, Object data);
20
21 public Object visit(ConstructorNode constructorNode, Object data);
22
23 public Object visitMethods(ClassNode classNode, Object data);
24
25 public Object visit(MethodNode methodNode, Object data);
26
27 public Object visitUses(MemberNode memberNode, Object data);
28
29 public Object visitUse(MemberNode use, Object data);
30
31 public Object visitUsers(MemberNode memberNode, Object data);
32
33 public Object visitUser(MemberNode user, Object data);
34 }