[PATCH 08 of 10 V2] manifest: rename matches to _matches
Durham Goode
durham at fb.com
Tue Mar 7 22:22:40 EST 2017
# HG changeset patch
# User Durham Goode <durham at fb.com>
# Date 1488937983 28800
# Tue Mar 07 17:53:03 2017 -0800
# Node ID b76e7da4fb9ab00c3b98e5613d7caa0b4aceaf8b
# Parent 822259e9f117b11cd54d6a13565a3202b508eae8
manifest: rename matches to _matches
Now that there are no external consumers of manifest.matches, let's rename it to
_matches so it remains internal. This means alternative manifest implementations
no longer have to implement it, and can instead implement efficient versions of
diff() and filesnotin().
diff --git a/mercurial/manifest.py b/mercurial/manifest.py
--- a/mercurial/manifest.py
+++ b/mercurial/manifest.py
@@ -448,8 +448,8 @@ class manifestdict(object):
def filesnotin(self, m2, match=None):
'''Set of files in this manifest that are not in the other'''
if match:
- m1 = self.matches(match)
- m2 = m2.matches(match)
+ m1 = self._matches(match)
+ m2 = m2._matches(match)
return m1.filesnotin(m2)
diff = self.diff(m2)
files = set(filepath
@@ -510,7 +510,7 @@ class manifestdict(object):
if not self.hasdir(fn):
match.bad(fn, None)
- def matches(self, match):
+ def _matches(self, match):
'''generate a new manifest filtered by the match argument'''
if match.always():
return self.copy()
@@ -543,8 +543,8 @@ class manifestdict(object):
string.
'''
if match:
- m1 = self.matches(match)
- m2 = m2.matches(match)
+ m1 = self._matches(match)
+ m2 = m2._matches(match)
return m1.diff(m2, clean=clean)
return self._lm.diff(m2._lm, clean)
@@ -917,8 +917,8 @@ class treemanifest(object):
def filesnotin(self, m2, match=None):
'''Set of files in this manifest that are not in the other'''
if match:
- m1 = self.matches(match)
- m2 = m2.matches(match)
+ m1 = self._matches(match)
+ m2 = m2._matches(match)
return m1.filesnotin(m2)
files = set()
@@ -1002,7 +1002,7 @@ class treemanifest(object):
for f in self._dirs[p]._walk(match):
yield f
- def matches(self, match):
+ def _matches(self, match):
'''generate a new manifest filtered by the match argument'''
if match.always():
return self.copy()
@@ -1054,8 +1054,8 @@ class treemanifest(object):
string.
'''
if match:
- m1 = self.matches(match)
- m2 = m2.matches(match)
+ m1 = self._matches(match)
+ m2 = m2._matches(match)
return m1.diff(m2, clean=clean)
result = {}
emptytree = treemanifest()
diff --git a/tests/test-manifest.py b/tests/test-manifest.py
--- a/tests/test-manifest.py
+++ b/tests/test-manifest.py
@@ -233,7 +233,7 @@ class basemanifesttests(object):
self.assertEqual(want, m['foo'])
# make sure the suffix survives a copy
match = matchmod.match('', '', ['re:foo'])
- m2 = m.matches(match)
+ m2 = m._matches(match)
self.assertEqual(want, m2['foo'])
self.assertEqual(1, len(m2))
m2 = m.copy()
@@ -255,7 +255,7 @@ class basemanifesttests(object):
assert False
return True
match.matchfn = filt
- self.assertRaises(AssertionError, m.matches, match)
+ self.assertRaises(AssertionError, m._matches, match)
def testRemoveItem(self):
m = self.parsemanifest(A_SHORT_MANIFEST)
@@ -358,7 +358,7 @@ class basemanifesttests(object):
match = matchmod.match('/', '',
['file1', 'file200', 'file300'], exact=True)
- m2 = m.matches(match)
+ m2 = m._matches(match)
w = ('file1\0%sx\n'
'file200\0%sl\n'
@@ -374,7 +374,7 @@ class basemanifesttests(object):
match = matchmod.match('/', '',
['a/b/c/bar.txt', 'a/b/d/qux.py', 'readme.txt', 'nonexistent'],
exact=True)
- m2 = m.matches(match)
+ m2 = m._matches(match)
self.assertEqual(
['a/b/c/bar.txt', 'a/b/d/qux.py', 'readme.txt'],
@@ -386,7 +386,7 @@ class basemanifesttests(object):
m = self.parsemanifest(A_DEEPER_MANIFEST)
match = matchmod.match('/', '', ['a/f'], default='relpath')
- m2 = m.matches(match)
+ m2 = m._matches(match)
self.assertEqual([], m2.keys())
@@ -397,7 +397,7 @@ class basemanifesttests(object):
flist = m.keys()[80:300]
match = matchmod.match('/', '', flist, exact=True)
- m2 = m.matches(match)
+ m2 = m._matches(match)
self.assertEqual(flist, m2.keys())
@@ -406,7 +406,7 @@ class basemanifesttests(object):
m = self.parsemanifest(A_DEEPER_MANIFEST)
match = matchmod.match('/', '', [''])
- m2 = m.matches(match)
+ m2 = m._matches(match)
self.assertEqual(m.keys(), m2.keys())
@@ -416,7 +416,7 @@ class basemanifesttests(object):
m = self.parsemanifest(A_DEEPER_MANIFEST)
match = matchmod.match('/', '', ['a/b'], default='relpath')
- m2 = m.matches(match)
+ m2 = m._matches(match)
self.assertEqual([
'a/b/c/bar.py', 'a/b/c/bar.txt', 'a/b/c/foo.py', 'a/b/c/foo.txt',
@@ -430,7 +430,7 @@ class basemanifesttests(object):
m = self.parsemanifest(A_DEEPER_MANIFEST)
match = matchmod.match('/', '', ['a/b'], exact=True)
- m2 = m.matches(match)
+ m2 = m._matches(match)
self.assertEqual([], m2.keys())
@@ -440,7 +440,7 @@ class basemanifesttests(object):
m = self.parsemanifest(A_DEEPER_MANIFEST)
match = matchmod.match('/', 'a/b', ['.'], default='relpath')
- m2 = m.matches(match)
+ m2 = m._matches(match)
self.assertEqual([
'a/b/c/bar.py', 'a/b/c/bar.txt', 'a/b/c/foo.py', 'a/b/c/foo.txt',
@@ -453,7 +453,7 @@ class basemanifesttests(object):
m = self.parsemanifest(A_DEEPER_MANIFEST)
match = matchmod.match('/', '', ['a/b/*/*.txt'])
- m2 = m.matches(match)
+ m2 = m._matches(match)
self.assertEqual(
['a/b/c/bar.txt', 'a/b/c/foo.txt', 'a/b/d/ten.txt'],
More information about the Mercurial-devel
mailing list