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

Method _generate_toc

Lib/mailbox.py:1415–1443  ·  view source on GitHub ↗

Generate key-to-(start, stop) table of contents.

(self)

Source from the content-addressed store, hash-verified

1413 return list(labels)
1414
1415 def _generate_toc(self):
1416 """Generate key-to-(start, stop) table of contents."""
1417 starts, stops = [], []
1418 self._file.seek(0)
1419 next_pos = 0
1420 label_lists = []
1421 while True:
1422 line_pos = next_pos
1423 line = self._file.readline()
1424 next_pos = self._file.tell()
1425 if line == b'\037\014' + linesep:
1426 if len(stops) < len(starts):
1427 stops.append(line_pos - len(linesep))
1428 starts.append(next_pos)
1429 labels = [label.strip() for label
1430 in self._file.readline()[1:].split(b',')
1431 if label.strip()]
1432 label_lists.append(labels)
1433 elif line == b'\037' or line == b'\037' + linesep:
1434 if len(stops) < len(starts):
1435 stops.append(line_pos - len(linesep))
1436 elif not line:
1437 stops.append(line_pos - len(linesep))
1438 break
1439 self._toc = dict(enumerate(zip(starts, stops)))
1440 self._labels = dict(enumerate(label_lists))
1441 self._next_key = len(self._toc)
1442 self._file.seek(0, 2)
1443 self._file_length = self._file.tell()
1444
1445 def _pre_mailbox_hook(self, f):
1446 """Called before writing the mailbox to file f."""

Callers

nothing calls this directly

Calls 7

enumerateFunction · 0.85
seekMethod · 0.45
readlineMethod · 0.45
tellMethod · 0.45
appendMethod · 0.45
stripMethod · 0.45
splitMethod · 0.45

Tested by

no test coverage detected