net.sourceforge.pmd.dcd

## Class UsageNodeVisitor

- java.lang.Object
- - net.sourceforge.pmd.dcd.graph.NodeVisitorAdapter
  - - net.sourceforge.pmd.dcd.UsageNodeVisitor

All Implemented Interfaces:
  NodeVisitor

    public class UsageNodeVisitor
    extends NodeVisitorAdapter

Perform a visitation a UsageGraph, looking for dead code, which is essential code which is not used by any other code. There are various options for configuration how this determination is made.

### Nested Class Summary

Nested Classes
`static class` `UsageNodeVisitor.Options` Configuration options for usage analysis.

### Constructor Summary

Constructors
Constructor and Description
`UsageNodeVisitor()`

### Method Summary

Methods
`Object` `visit(ClassNode classNode, Object data)`
`Object` `visit(ConstructorNode constructorNode, Object data)`
`Object` `visit(FieldNode fieldNode, Object data)`
`Object` `visit(MethodNode methodNode, Object data)`
`Object` `visit(UsageGraph usageGraph, Object data)`

### Methods inherited from class net.sourceforge.pmd.dcd.graph.NodeVisitorAdapter

`visitConstructors, visitFields, visitMethods, visitUse, visitUser, visitUsers, visitUses`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### UsageNodeVisitor

    public UsageNodeVisitor()

### Method Detail

#### visit

    public Object visit(UsageGraph usageGraph,
               Object data)

Specified by:
  `visit` in interface `NodeVisitor`
Overrides:
  `visit` in class `NodeVisitorAdapter`

#### visit

    public Object visit(ClassNode classNode,
               Object data)

Specified by:
  `visit` in interface `NodeVisitor`
Overrides:
  `visit` in class `NodeVisitorAdapter`

#### visit

    public Object visit(FieldNode fieldNode,
               Object data)

Specified by:
  `visit` in interface `NodeVisitor`
Overrides:
  `visit` in class `NodeVisitorAdapter`

#### visit

    public Object visit(ConstructorNode constructorNode,
               Object data)

Specified by:
  `visit` in interface `NodeVisitor`
Overrides:
  `visit` in class `NodeVisitorAdapter`

#### visit

    public Object visit(MethodNode methodNode,
               Object data)

Specified by:
  `visit` in interface `NodeVisitor`
Overrides:
  `visit` in class `NodeVisitorAdapter`