code: def peek(self, size: int) -> memoryview:
          
          assert size > 0
          try:
              is_memview, b = self._buffers[0]
          except IndexError:
              return memoryview(b"")
  
          pos = self._first_pos
          if is_memview:
              return typing.cast(memoryview, b[pos : pos + size])
          else:
              return memoryview(b)[pos : pos + size]
docs: Get a view over at most ``size`` bytes (possibly fewer) at the
          current buffer position.