@Override
	public boolean addAll(Collection<? extends E> coll) {
    	if (coll instanceof List) {
    		return doAddAll(-1, new IReadOnlyListFromList<E>((List<? extends E>) coll));
    	} else {
    		return doAddAll(-1, new IReadOnlyListFromCollection<E>(coll));
    	}
	}
Adds all of the elements in the specified collection into this list.
The new elements will appear in the list in the order that they
are returned by the specified collection's iterator.

@param coll collection containing elements to be added to this list
@return <tt>true</tt> if this list changed as a result of the call
@throws NullPointerException if the specified collection is null
jphp-runtime/src/php/runtime/memory/support/IList.java