Mercurial > hg
view mercurial/strutil.py @ 29087:ad1bdea43965
dispatch: defer environment variable resolution in alias commands (BC)
Before this patch, if there are environment variables in an alias command,
they will be expanded immediately when we first see the alias.
This will cause issues with chg, because environment variable updates will
not propagate to expanded arguments.
This patch makes "args" of "cmdalias" a property that will be calculated
every time when accessed.
author | Jun Wu <quark@fb.com> |
---|---|
date | Sat, 07 May 2016 00:16:58 +0100 |
parents | b723f05ec49b |
children |
line wrap: on
line source
# 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. from __future__ import absolute_import 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