def read_line(self, sep=six.b('<STR_LIT:\n>')):
start = <NUM_LIT:0><EOL>while not self._stream.closed:<EOL><INDENT>loc = self._buffer.find(sep, start)<EOL>if loc >= <NUM_LIT:0>:<EOL><INDENT>return self._pop(loc + len(sep))<EOL><DEDENT>else:<EOL><INDENT>start = len(self._buffer)<EOL><DEDENT>self._buffer += self._stream.read(self._chunk_size)<EOL><DEDENT>return six.b('<STR_LIT>')<EOL>
Read the data stream until a given separator is found (default \n)

        :param sep: Separator to read until. Must by of the bytes type (str in python 2,
            bytes in python 3)
        :return: The str of the data read until sep