code: @Pure
  	@Inline(value="$3.$4concat($1, $2)", imported=Iterables.class)
  	public static <T> Iterable<T> operator_plus(Iterable<? extends T> a, Iterable<? extends T> b) {
  		return Iterables.concat(a, b);
  	}
docs: <p>
  Concatenates two iterables into a single iterable. The returned iterable has an iterator that traverses the
  elements in {@code a}, followed by the elements in {@code b}. The resulting iterable is effectivly a view on the
  source iterables. That is, the source iterators are not polled until necessary and the result will reflect
  changes in the sources.
  </p>
  <p>
  The returned iterable's iterator supports {@code remove()} when the corresponding input iterator supports it.
  </p>
  
  @param a
  the first iterable. May not be <code>null</code>.
  @param b
  the second iterable. May not be <code>null</code>.
  @return a combined iterable. Never <code>null</code>.