code: public FilterOperator<T> filter(FilterFunction<T> filter) {
  		if (filter == null) {
  			throw new NullPointerException("Filter function must not be null.");
  		}
  		return new FilterOperator<T>(this, filter);
  	}
docs: Applies a Filter transformation on a {@link DataSet}.<br/>
  The transformation calls a {@link FilterFunction} for each element of the DataSet
  and retains only those element for which the function returns true. Elements for
  which the function returns false are filtered.
  
  @param filter The FilterFunction that is called for each element of the DataSet.
  @return A FilterOperator that represents the filtered DataSet.
  
  @see FilterFunction
  @see FilterOperator
  @see DataSet