mercurial/strutil.py
author Anton Shestakov <engored@ya.ru>
Sat, 30 May 2015 01:57:19 +0800
changeset 25345 8be8c2d3559a
parent 10263 25e572394f5c
child 25979 b723f05ec49b
permissions -rw-r--r--
tests: actualize the comment in test-hgweb-descend-empties.t The comment came together with the whole test file and the feature (descend empty dirs in hgweb) in c21d236ca897, but for some reason wasn't exactly accurate. Namely, there isn't e1 directory in the test at all, it obviously should say d1; and b1 didn't terminate at level 3, but does now.

# strutil.py - string utilities for Mercurial
#
# Copyright 2006 Vadim Gelfer <vadim.gelfer@gmail.com>
#
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2 or any later version.

def findall(haystack, needle, start=0, end=None):
    if end is None:
        end = len(haystack)
    if end < 0:
        end += len(haystack)
    if start < 0:
        start += len(haystack)
    while start < end:
        c = haystack.find(needle, start, end)
        if c == -1:
            break
        yield c
        start = c + 1

def rfindall(haystack, needle, start=0, end=None):
    if end is None:
        end = len(haystack)
    if end < 0:
        end += len(haystack)
    if start < 0:
        start += len(haystack)
    while end >= 0:
        c = haystack.rfind(needle, start, end)
        if c == -1:
            break
        yield c
        end = c - 1