code: func (itr *bufIterator) Next() (rowID, columnID uint64, eof bool) {
  	if itr.buf.full {
  		itr.buf.full = false
  		return itr.buf.rowID, itr.buf.columnID, itr.buf.eof
  	}
  
  	// Read values onto buffer in case of unread.
  	itr.buf.rowID, itr.buf.columnID, itr.buf.eof = itr.itr.Next()
  
  	return itr.buf.rowID, itr.buf.columnID, itr.buf.eof
  }
docs: // Next returns the next pair in the row.
  // If a value has been buffered then it is returned and the buffer is cleared.