code: public int drainTo(@NotNull ByteBufQueue dest) {
  		int size = 0;
  		while (hasRemaining()) {
  			ByteBuf buf = take();
  			dest.add(buf);
  			size += buf.readRemaining();
  		}
  		return size;
  	}
docs: Copies all bytes from this queue to {@code dest}, and removes it from this queue.
  
  @param dest ByteBufQueue  for draining
  @return number of adding bytes