MCPcopy Index your code
hub / github.com/RustPython/RustPython / seek

Method seek

Lib/gzip.py:438–459  ·  view source on GitHub ↗
(self, offset, whence=io.SEEK_SET)

Source from the content-addressed store, hash-verified

436 return True
437
438 def seek(self, offset, whence=io.SEEK_SET):
439 if self.mode == WRITE:
440 self._check_not_closed()
441 # Flush buffer to ensure validity of self.offset
442 self._buffer.flush()
443 if whence != io.SEEK_SET:
444 if whence == io.SEEK_CUR:
445 offset = self.offset + offset
446 else:
447 raise ValueError('Seek from end not supported')
448 if offset < self.offset:
449 raise OSError('Negative seek in write mode')
450 count = offset - self.offset
451 chunk = b'\0' * self._buffer_size
452 for i in range(count // self._buffer_size):
453 self.write(chunk)
454 self.write(b'\0' * (count % self._buffer_size))
455 elif self.mode == READ:
456 self._check_not_closed()
457 return self._buffer.seek(offset, whence)
458
459 return self.offset
460
461 def readline(self, size=-1):
462 self._check_not_closed()

Callers 3

seekMethod · 0.45
rewindMethod · 0.45

Calls 3

writeMethod · 0.95
_check_not_closedMethod · 0.80
flushMethod · 0.45

Tested by 1