equal
deleted
inserted
replaced
173 return '.*' + name |
173 return '.*' + name |
174 return _globre(name, '', tail) |
174 return _globre(name, '', tail) |
175 |
175 |
176 def matchfn(pats, tail): |
176 def matchfn(pats, tail): |
177 """build a matching function from a set of patterns""" |
177 """build a matching function from a set of patterns""" |
178 if not pats: |
|
179 return |
|
180 try: |
178 try: |
181 pat = '(?:%s)' % '|'.join([regex(k, p, tail) for (k, p) in pats]) |
179 pat = '(?:%s)' % '|'.join([regex(k, p, tail) for (k, p) in pats]) |
182 if len(pat) > 20000: |
180 if len(pat) > 20000: |
183 raise OverflowError() |
181 raise OverflowError() |
184 return re.compile(pat).match |
182 return re.compile(pat).match |
231 roots.append('.') |
229 roots.append('.') |
232 return roots, pats, anypats |
230 return roots, pats, anypats |
233 |
231 |
234 roots, pats, anypats = normalizepats(names, dflt_pat) |
232 roots, pats, anypats = normalizepats(names, dflt_pat) |
235 |
233 |
236 patmatch = matchfn(pats, '$') |
234 if names: |
|
235 patmatch = matchfn(pats, '$') |
237 if inc: |
236 if inc: |
238 dummy, inckinds, dummy = normalizepats(inc, 'glob') |
237 dummy, inckinds, dummy = normalizepats(inc, 'glob') |
239 incmatch = matchfn(inckinds, '(?:/|$)') |
238 incmatch = matchfn(inckinds, '(?:/|$)') |
240 if exc: |
239 if exc: |
241 dummy, exckinds, dummy = normalizepats(exc, 'glob') |
240 dummy, exckinds, dummy = normalizepats(exc, 'glob') |