docs: public void readFrom(final InputStream in) throws IOException {
          pointer = 0;
          size = 0;
          int n;
          do {
              n = in.read(buffer, size, buffer.length - size);
              if (n > 0) {
                  size += n;
              }
              resizeIfNeeded();
          } while (n >= 0);
      }