Class TreeBidiMap.Node<K extends java.lang.Comparable<K>,V extends java.lang.Comparable<V>>
- java.lang.Object
-
- org.apache.commons.collections4.bidimap.TreeBidiMap.Node<K,V>
-
- All Implemented Interfaces:
java.util.Map.Entry<K,V>
,KeyValue<K,V>
- Enclosing class:
- TreeBidiMap<K extends java.lang.Comparable<K>,V extends java.lang.Comparable<V>>
static class TreeBidiMap.Node<K extends java.lang.Comparable<K>,V extends java.lang.Comparable<V>> extends java.lang.Object implements java.util.Map.Entry<K,V>, KeyValue<K,V>
A node used to store the data.
-
-
Field Summary
Fields Modifier and Type Field Description private boolean[]
blackColor
private boolean
calculatedHashCode
private int
hashcodeValue
private K
key
private TreeBidiMap.Node<K,V>[]
leftNode
private TreeBidiMap.Node<K,V>[]
parentNode
private TreeBidiMap.Node<K,V>[]
rightNode
private V
value
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
copyColor(TreeBidiMap.Node<K,V> node, TreeBidiMap.DataElement dataElement)
Make this node the same color as anotherboolean
equals(java.lang.Object obj)
Compares the specified object with this entry for equality.private java.lang.Object
getData(TreeBidiMap.DataElement dataElement)
K
getKey()
Gets the key.private TreeBidiMap.Node<K,V>
getLeft(TreeBidiMap.DataElement dataElement)
private TreeBidiMap.Node<K,V>
getParent(TreeBidiMap.DataElement dataElement)
Get the parent node.private TreeBidiMap.Node<K,V>
getRight(TreeBidiMap.DataElement dataElement)
V
getValue()
Gets the value.int
hashCode()
private boolean
isBlack(TreeBidiMap.DataElement dataElement)
Is this node black?private boolean
isLeftChild(TreeBidiMap.DataElement dataElement)
private boolean
isRed(TreeBidiMap.DataElement dataElement)
Is this node red?private boolean
isRightChild(TreeBidiMap.DataElement dataElement)
private void
setBlack(TreeBidiMap.DataElement dataElement)
Make this node black.private void
setLeft(TreeBidiMap.Node<K,V> node, TreeBidiMap.DataElement dataElement)
private void
setParent(TreeBidiMap.Node<K,V> node, TreeBidiMap.DataElement dataElement)
Set this node's parent node.private void
setRed(TreeBidiMap.DataElement dataElement)
Make this node red.private void
setRight(TreeBidiMap.Node<K,V> node, TreeBidiMap.DataElement dataElement)
V
setValue(V ignored)
Optional operation that is not permitted in this implementationprivate void
swapColors(TreeBidiMap.Node<K,V> node, TreeBidiMap.DataElement dataElement)
Exchange colors with another node.
-
-
-
Field Detail
-
leftNode
private final TreeBidiMap.Node<K extends java.lang.Comparable<K>,V extends java.lang.Comparable<V>>[] leftNode
-
rightNode
private final TreeBidiMap.Node<K extends java.lang.Comparable<K>,V extends java.lang.Comparable<V>>[] rightNode
-
parentNode
private final TreeBidiMap.Node<K extends java.lang.Comparable<K>,V extends java.lang.Comparable<V>>[] parentNode
-
blackColor
private final boolean[] blackColor
-
hashcodeValue
private int hashcodeValue
-
calculatedHashCode
private boolean calculatedHashCode
-
-
Method Detail
-
getData
private java.lang.Object getData(TreeBidiMap.DataElement dataElement)
-
setLeft
private void setLeft(TreeBidiMap.Node<K,V> node, TreeBidiMap.DataElement dataElement)
-
getLeft
private TreeBidiMap.Node<K,V> getLeft(TreeBidiMap.DataElement dataElement)
-
setRight
private void setRight(TreeBidiMap.Node<K,V> node, TreeBidiMap.DataElement dataElement)
-
getRight
private TreeBidiMap.Node<K,V> getRight(TreeBidiMap.DataElement dataElement)
-
setParent
private void setParent(TreeBidiMap.Node<K,V> node, TreeBidiMap.DataElement dataElement)
Set this node's parent node.- Parameters:
node
- the new parent nodedataElement
- eitherTreeBidiMap.DataElement.KEY
key} or thevalue
.
-
getParent
private TreeBidiMap.Node<K,V> getParent(TreeBidiMap.DataElement dataElement)
Get the parent node.- Parameters:
dataElement
- eitherTreeBidiMap.DataElement.KEY
key} or thevalue
.- Returns:
- the parent node, may be null
-
swapColors
private void swapColors(TreeBidiMap.Node<K,V> node, TreeBidiMap.DataElement dataElement)
Exchange colors with another node.- Parameters:
node
- the node to swap withdataElement
- eitherTreeBidiMap.DataElement.KEY
key} or thevalue
.
-
isBlack
private boolean isBlack(TreeBidiMap.DataElement dataElement)
Is this node black?- Parameters:
dataElement
- eitherTreeBidiMap.DataElement.KEY
key} or thevalue
.- Returns:
- true if black (which is represented as a true boolean)
-
isRed
private boolean isRed(TreeBidiMap.DataElement dataElement)
Is this node red?- Parameters:
dataElement
- eitherTreeBidiMap.DataElement.KEY
key} or thevalue
.- Returns:
- true if non-black
-
setBlack
private void setBlack(TreeBidiMap.DataElement dataElement)
Make this node black.- Parameters:
dataElement
- eitherTreeBidiMap.DataElement.KEY
key} or thevalue
.
-
setRed
private void setRed(TreeBidiMap.DataElement dataElement)
Make this node red.- Parameters:
dataElement
- eitherTreeBidiMap.DataElement.KEY
key} or thevalue
.
-
copyColor
private void copyColor(TreeBidiMap.Node<K,V> node, TreeBidiMap.DataElement dataElement)
Make this node the same color as another- Parameters:
node
- the node whose color we're adoptingdataElement
- eitherTreeBidiMap.DataElement.KEY
key} or thevalue
.
-
isLeftChild
private boolean isLeftChild(TreeBidiMap.DataElement dataElement)
-
isRightChild
private boolean isRightChild(TreeBidiMap.DataElement dataElement)
-
getKey
public K getKey()
Gets the key.
-
getValue
public V getValue()
Gets the value.
-
setValue
public V setValue(V ignored) throws java.lang.UnsupportedOperationException
Optional operation that is not permitted in this implementation
-
equals
public boolean equals(java.lang.Object obj)
Compares the specified object with this entry for equality. Returns true if the given object is also a map entry and the two entries represent the same mapping.- Specified by:
equals
in interfacejava.util.Map.Entry<K extends java.lang.Comparable<K>,V extends java.lang.Comparable<V>>
- Overrides:
equals
in classjava.lang.Object
- Parameters:
obj
- the object to be compared for equality with this entry.- Returns:
- true if the specified object is equal to this entry.
-
-