Method
remove
(LinkedList.Node<T> tNode)
Source from the content-addressed store, hash-verified
| 61 | } |
| 62 | |
| 63 | public LinkedList.Node<T> remove(LinkedList.Node<T> tNode) { |
| 64 | this.checkParent(tNode); |
| 65 | LinkedList.Node<T> prev = tNode.getPrev(); |
| 66 | LinkedList.Node<T> next = tNode.getNext(); |
| 67 | |
| 68 | if (prev != null) { |
| 69 | prev.setNext(next); |
| 70 | } else { |
| 71 | this.first = next; |
| 72 | } |
| 73 | |
| 74 | if (next != null) { |
| 75 | next.setPrev(prev); |
| 76 | } else { |
| 77 | this.last = prev; |
| 78 | } |
| 79 | |
| 80 | tNode.setPrev(null); |
| 81 | tNode.setNext(null); |
| 82 | tNode.setParent(null); |
| 83 | --this.size; |
| 84 | return tNode; |
| 85 | } |
| 86 | |
| 87 | public void moveAfter(LinkedList.Node<T> nodePrev, LinkedList.Node<T> node) { |
| 88 | this.remove(node); |