Skip to content

Commit

Permalink
re-add readline method to stream class because doc formatting removed…
Browse files Browse the repository at this point in the history
… it somehow
  • Loading branch information
unaidedelf8777 committed Sep 27, 2023
1 parent 6cc3590 commit f7a65ef
Showing 1 changed file with 13 additions and 0 deletions.
13 changes: 13 additions & 0 deletions interpreter/code_interpreters/container_utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -154,6 +154,19 @@ def __init__(self, parent, read_fd):
self.parent = parent
self._read_fd = read_fd
self._buffer = ""

def readline(self, timeout=3):
while '\n' not in self._buffer:
ready_to_read, _, _ = select.select([self._read_fd], [], [], timeout)
if not ready_to_read:
return ''
chunk = os.read(self._read_fd, 1024).decode('utf-8')
self._buffer += chunk

newline_pos = self._buffer.find('\n')
line = self._buffer[:newline_pos]
self._buffer = self._buffer[newline_pos + 1:]
return line

def _listen(self):
while not self._stop_event.is_set():
Expand Down

0 comments on commit f7a65ef

Please sign in to comment.