docs: @CanIgnoreReturnValue
    public static long copy(Readable from, Appendable to) throws IOException {
      checkNotNull(from);
      checkNotNull(to);
      CharBuffer buf = createBuffer();
      long total = 0;
      while (from.read(buf) != -1) {
        buf.flip();
        to.append(buf);
        total += buf.remaining();
        buf.clear();
      }
      return total;
    }