207 kindpats.append((kind, pat, '')) |
207 kindpats.append((kind, pat, '')) |
208 return kindpats |
208 return kindpats |
209 |
209 |
210 class basematcher(object): |
210 class basematcher(object): |
211 |
211 |
212 def __init__(self, root, cwd, badfn=None): |
212 def __init__(self, root, cwd, badfn=None, relativeuipath=True): |
213 self._root = root |
213 self._root = root |
214 self._cwd = cwd |
214 self._cwd = cwd |
215 if badfn is not None: |
215 if badfn is not None: |
216 self.bad = badfn |
216 self.bad = badfn |
|
217 self._relativeuipath = relativeuipath |
217 |
218 |
218 def __call__(self, fn): |
219 def __call__(self, fn): |
219 return self.matchfn(fn) |
220 return self.matchfn(fn) |
220 def __iter__(self): |
221 def __iter__(self): |
221 for f in self._files: |
222 for f in self._files: |
305 class matcher(basematcher): |
306 class matcher(basematcher): |
306 |
307 |
307 def __init__(self, root, cwd, normalize, patterns, include=None, |
308 def __init__(self, root, cwd, normalize, patterns, include=None, |
308 default='glob', exact=False, auditor=None, ctx=None, |
309 default='glob', exact=False, auditor=None, ctx=None, |
309 listsubrepos=False, warn=None, badfn=None): |
310 listsubrepos=False, warn=None, badfn=None): |
310 super(matcher, self).__init__(root, cwd, badfn) |
311 super(matcher, self).__init__(root, cwd, badfn, |
|
312 relativeuipath=bool(include or patterns)) |
311 if include is None: |
313 if include is None: |
312 include = [] |
314 include = [] |
313 |
315 |
314 self._anypats = bool(include) |
316 self._anypats = bool(include) |
315 self._anyincludepats = False |
317 self._anyincludepats = False |
316 self._always = False |
318 self._always = False |
317 self._pathrestricted = bool(include or patterns) |
|
318 self.patternspat = None |
319 self.patternspat = None |
319 self.includepat = None |
320 self.includepat = None |
320 |
321 |
321 # roots are directories which are recursively included. |
322 # roots are directories which are recursively included. |
322 self._includeroots = set() |
323 self._includeroots = set() |