code: def _read_from_buffer(self, size=-1):
          
          # logger.debug('reading %r bytes from %r byte-long buffer', size, len(self._buffer))
          size = size if size >= 0 else len(self._buffer)
          part = self._buffer.read(size)
          self._current_pos += len(part)
          # logger.debug('part: %r', part)
          return part
docs: Remove at most size bytes from our buffer and return them.