/*
 * call-seq:
 *    gets(sep = "\n")
 *
 * Reads a line from the stream until the separator is reached. This does not
 * throw an exception, but rather returns nil if an eoz/eof error occurs
 *
 *    reader = Bzip2::Reader.new Bzip2.compress("a\nb")
 *    reader.gets # => "a\n"
 *    reader.gets # => "b"
 *    reader.gets # => nil
 *
 * @return [String, nil] the read data or nil if eoz has been reached
 * @see Bzip2::Reader#readline
 */
static VALUE bz_reader_gets_m(int argc, VALUE *argv, VALUE obj) {