net.sourceforge.pmd.dcd.graph

## Class MemberNode<S extends MemberNode<S,T>,T extends Member>

- java.lang.Object
- - net.sourceforge.pmd.dcd.graph.MemberNode<S,T>

All Implemented Interfaces:
  Comparable<S>, NodeVisitorAcceptor

Direct Known Subclasses:
  ConstructorNode, FieldNode, MethodNode

    public abstract class MemberNode<S extends MemberNode<S,T>,T extends Member>
    extends Object
    implements NodeVisitorAcceptor, Comparable<S>

Represents a Class Member in a UsageGraph.

### Field Summary

Fields
`protected ClassNode` `classNode`
`protected String` `desc`
`protected String` `name`

### Constructor Summary

Constructors
Constructor and Description
`MemberNode(ClassNode classNode, String name, String desc)`

### Method Summary

Methods
`Object` `accept(NodeVisitor visitor, Object data)`
`void` `addUse(MemberNode use)`
`void` `addUser(MemberNode user)`
`abstract boolean` `equals(Object that)`
`boolean` `equals(S that)`
`boolean` `equals(String name, String desc)`
`ClassNode` `getClassNode()`
`String` `getDesc()`
`abstract T` `getMember()`
`String` `getName()`
`List<MemberNode>` `getUsers()`
`List<MemberNode>` `getUses()`
`int` `hashCode()`
`String` `toString()`
`String` `toStringLong()`

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

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface java.lang.Comparable

`compareTo`

### Field Detail

#### classNode

    protected final ClassNode classNode

#### name

    protected final String name

#### desc

    protected final String desc

### Constructor Detail

#### MemberNode

    public MemberNode(ClassNode classNode,
              String name,
              String desc)

### Method Detail

#### accept

    public Object accept(NodeVisitor visitor,
                Object data)

Specified by:
  `accept` in interface `NodeVisitorAcceptor`

#### getClassNode

    public ClassNode getClassNode()

#### getName

    public String getName()

#### getDesc

    public String getDesc()

#### getMember

    public abstract T getMember()

#### addUse

    public void addUse(MemberNode use)

#### getUses

    public List<MemberNode> getUses()

#### addUser

    public void addUser(MemberNode user)

#### getUsers

    public List<MemberNode> getUsers()

#### toString

    public String toString()

Overrides:
  `toString` in class `Object`

#### toStringLong

    public String toStringLong()

#### equals

    public abstract boolean equals(Object that)

Overrides:
  `equals` in class `Object`

#### equals

    public boolean equals(S that)

#### equals

    public boolean equals(String name,
                 String desc)

#### hashCode

    public int hashCode()

Overrides:
  `hashCode` in class `Object`