code: public <X> DataSource<X> fromCollection(Iterator<X> data, Class<X> type) {
  		return fromCollection(data, TypeExtractor.getForClass(type));
  	}
docs: Creates a DataSet from the given iterator. Because the iterator will remain unmodified until
  the actual execution happens, the type of data returned by the iterator must be given
  explicitly in the form of the type class (this is due to the fact that the Java compiler
  erases the generic type information).
  
  <p>Note that this operation will result in a non-parallel data source, i.e. a data source with
  a parallelism of one.
  
  @param data The collection of elements to create the data set from.
  @param type The class of the data produced by the iterator. Must not be a generic class.
  @return A DataSet representing the elements in the iterator.
  
  @see #fromCollection(Iterator, TypeInformation)