MCPcopy Index your code
hub / github.com/python/cpython / read

Method read

Lib/tarfile.py:682–711  ·  view source on GitHub ↗

Read data from the file.

(self, size=None)

Source from the content-addressed store, hash-verified

680 return self.position
681
682 def read(self, size=None):
683 """Read data from the file.
684 """
685 if size is None:
686 size = self.size - self.position
687 else:
688 size = min(size, self.size - self.position)
689
690 buf = b""
691 while size > 0:
692 while True:
693 data, start, stop, offset = self.map[self.map_index]
694 if start <= self.position < stop:
695 break
696 else:
697 self.map_index += 1
698 if self.map_index == len(self.map):
699 self.map_index = 0
700 length = min(size, stop - self.position)
701 if data:
702 self.fileobj.seek(offset + (self.position - start))
703 b = self.fileobj.read(length)
704 if len(b) != length:
705 raise ReadError("unexpected end of data")
706 buf += b
707 else:
708 buf += NUL * length
709 size -= length
710 self.position += length
711 return buf
712
713 def readinto(self, b):
714 buf = self.read(len(b))

Callers 1

readintoMethod · 0.95

Calls 3

ReadErrorClass · 0.70
seekMethod · 0.45
readMethod · 0.45

Tested by

no test coverage detected