code: static <T> void writes(
  		final Collection<? extends T> elements,
  		final Writer<? super T> writer,
  		final DataOutput out
  	)
  		throws IOException
  	{
  		writeInt(elements.size(), out);
  		for (T element : elements) {
  			writer.write(element, out);
  		}
  	}
docs: Write the given elements to the data output.
  
  @param elements the elements to write
  @param writer the element writer
  @param out the data output
  @param <T> the element type
  @throws NullPointerException if one of the given arguments is {@code null}
  @throws IOException if an I/O error occurs