@CanIgnoreReturnValue
  public static <T> boolean addAll(Collection<T> addTo, Iterable<? extends T> elementsToAdd) {
    if (elementsToAdd instanceof Collection) {
      Collection<? extends T> c = Collections2.cast(elementsToAdd);
      return addTo.addAll(c);
    }
    return Iterators.addAll(addTo, checkNotNull(elementsToAdd).iterator());
  }
@CanIgnoreReturnValue
  public static <T> boolean addAll(Collection<T> addTo, Iterable<? extends T> elementsToAdd) {
    if (elementsToAdd instanceof Collection) {
      Collection<? extends T> c = Collections2.cast(elementsToAdd);
      return addTo.addAll(c);
    }
    return Iterators.addAll(addTo, checkNotNull(elementsToAdd).iterator());
  }
@ CanIgnoreReturnValue public static < T > boolean addAll ( Collection < T > addTo , Iterable < ? extends T > elementsToAdd ) { if ( elementsToAdd instanceof Collection ) { Collection < ? extends T > c = Collections2 . cast ( elementsToAdd ) ; return addTo . addAll ( c ) ; } return Iterators . addAll ( addTo , checkNotNull ( elementsToAdd ) . iterator ( ) ) ; }
Adds all elements in {@code iterable} to {@code collection}.

@return {@code true} if {@code collection} was modified as a result of this operation.
Adds all elements in { @code iterable } to { @code collection } .