public static <E> void transferMove(IList<E> src, int srcIndex, int srcLen, IList<? super E> dst, int dstIndex, int dstLen) {
    	if (src == dst) {
    		src.checkLengths(srcLen, dstLen);
    		src.move(srcIndex, dstIndex, srcLen);
    	} else {
    		src.doTransfer(TRANSFER_MOVE, srcIndex, srcLen, dst, dstIndex, dstLen);
    	}
    }
Moves elements from one list to another by setting it to null in the source list.
Elements in the source range are set to null, but size of source list does not change.
The elements in the specified range in the destination list are removed and
the elements specified to be moved are inserted.

If source and destination list are identical, the method behaves like {@link #move(int, int, int)}.

@param src		source list
@param srcIndex	index of first element in source list
@param srcLen	number of elements to copy
@param dst		destination list
@param dstIndex	index of first element in destination list
@param dstLen	number of elements to replace in destination list
@param <E> 		type of elements stored in the list
@throws 			IndexOutOfBoundsException if the ranges are invalid
jphp-runtime/src/php/runtime/memory/support/IList.java