[PATCH 3 of 4] dirstate: skip step 3 in walk if nothing new will match
Simon Heimberg
simohe at besonet.ch
Tue May 19 08:44:37 CDT 2009
Am Dienstag, den 19.05.2009, 15:33 +0200 schrieb Benoit Boissinot:
> On Tue, May 19, 2009 at 07:27:37AM +0000, Simon Heimberg wrote:
> > # HG changeset patch
> > # User Simon Heimberg <simohe at besonet.ch>
> > # Date 1242323666 -7200
> > # Node ID 19a134f738f5ac0720bc08fbe6507f4eb4769fd9
> > # Parent 4095d02302b74f9ce2c90fe283d84ad31ce2da83
> > dirstate: skip step 3 in walk if nothing new will match
> >
> > nothing will ever match on match.never
> > nothing new will match on match.exact (all found in step 1)
> > nothing new will match on match.match when
> > there is no pattern and
> > there is no direcory in pats
> >
> > diff -r 4095d02302b7 -r 19a134f738f5 mercurial/dirstate.py
> > --- a/mercurial/dirstate.py Don Mai 14 10:50:45 2009 +0200
> > +++ b/mercurial/dirstate.py Don Mai 14 19:54:26 2009 +0200
> > @@ -460,6 +460,11 @@
> > join = self._join
> > work = []
> > wadd = work.append
> > + dostep3 = match.anypats() or match.__class__.__name__ == 'always'
> > + nomatches = not dostep3 and match.__class__.__name__ in 'never exact'.split()
>
> would isinstance() work here ?
Sure, but only when match is imported. Shall I resend whith this change?
>
> regards,
>
> Benoit
>
More information about the Mercurial-devel
mailing list