def _block_from_log()

in benchmarking/utils/log_utils.py [0:0]


def _block_from_log(log, s1, s2, forward=True):
    start, end, first = None, None, True
    temp = log.split("\n")
    if forward:
        for i, s in enumerate(temp):
            if s1 == s:
                start = i
            if s2 == s:
                if first:
                    first = False
                else:
                    end = i
            if start and end:
                return temp[start : end + 1]
    else:
        for i, s in enumerate(temp[::-1]):
            if s1 == s:
                start = len(temp) - 1 - i
            if s2 == s and not end:
                end = len(temp) - 1 - i
            if start and end:
                return temp[start : end + 1]
    return None