

def __iter__(self):
    ext = os.path.splitext(self.logname)[1]
    if (ext == '.gz'):
        d = zlib.decompressobj((16 + zlib.MAX_WBITS))
    if isinstance(self.obj, types.GeneratorType):
        buf = next(self.obj)
        partial = ''
        while buf:
            if (ext == '.gz'):
                string = (partial + d.decompress(buf))
            else:
                string = (partial + buf)
            split = string.split('\n')
            for line in split[:(- 1)]:
                (yield (line + '\n'))
            partial = split[(- 1)]
            try:
                buf = next(self.obj)
            except StopIteration:
                break
        if (partial != ''):
            (yield partial)
    else:
        output = self.obj
        if (ext == '.gz'):
            output = d.decompress(output)
        split = output.split('\n')
        for line in split[:(- 1)]:
            (yield (line + '\n'))
        partial = split[(- 1)]
        if (partial != ''):
            (yield partial)

dataset/ETHPy150Open openstack-infra/os-loganalyze/os_loganalyze/generator.py SwiftIterableBuffer.__iter__/original