code: public static Writable filterLine(InputStream self, String charset, @ClosureParams(value=SimpleType.class, options="java.lang.String") Closure predicate)
              throws UnsupportedEncodingException {
          return filterLine(newReader(self, charset), predicate);
      }
docs: Filter lines from an input stream using a closure predicate.  The closure
  will be passed each line as a String, and it should return
  <code>true</code> if the line should be passed to the writer.
  
  @param self      an input stream
  @param charset   opens the stream with a specified charset
  @param predicate a closure which returns boolean and takes a line
  @return a writable which writes out the filtered lines
  @throws UnsupportedEncodingException if the encoding specified is not supported
  @see #filterLine(java.io.Reader, groovy.lang.Closure)
  @since 1.6.8