public static <E> void transferSwap(IList<E> src, int srcIndex, IList<E> dst, int dstIndex, int len) {
    	if (src == dst) {
    		src.swap(srcIndex, dstIndex, len);
    	} else {
    		src.doTransferSwap(srcIndex, dst, dstIndex, len);
    	}
    }
Swaps elements from two lists.
The size of both source and destination list do not change.

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

@param src		first list
@param srcIndex	index of first element in first list
@param dst		second list
@param dstIndex	index of first element in second list
@param len		number of elements to swap
@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