public void splice( IteratorSTL<T> position, ListSTL<T> list, IteratorSTL<T> listPosition ) {
		ListIterator<T> toPosition = (ListIterator<T>)position;
		ListIterator<T> fromPosition = (ListIterator<T>)listPosition;
		ListNodeSTL<T> node = fromPosition.getNode();
		ListNodeSTL<T> insertAtNode = toPosition.getNode();

		node.prev.next = node.next;
		node.next.prev = node.prev;
		list.size--;

		node.next = insertAtNode;
		node.prev = insertAtNode.prev;
		node.prev.next = node;
		node.next.prev = node;
		size++;
	}
moves a single element, decreasing the length of list by 1 and increasing this list by 1.
@param position the position into this list where the element is to be inserted
@param list the list from which the element is removed.
@param listPosition the postion of the element to be removed.
Ghidra/Framework/Generic/src/main/java/generic/stl/ListSTL.java