in torchdata/datapipes/iter/util/paragraphaggregator.py [0:0]
def __iter__(self) -> Iterator[Tuple[str, str]]:
buffer = []
prev_filename = None
for filename, line in self.source_datapipe:
if prev_filename is None:
prev_filename = filename
if line and prev_filename == filename:
buffer.append(line)
else:
if buffer:
yield prev_filename, self.joiner(buffer) # type: ignore[misc]
if line:
buffer = [line]
else:
buffer = []
prev_filename = filename
if buffer:
yield prev_filename, self.joiner(buffer) # type: ignore[misc]