Mercurial > public > mercurial-scm > hg-stable
comparison mercurial/hgweb/webcommands.py @ 20364:a6cf48b2880d
revset: added baseset class (still empty) to improve revset performance
This class is going to be used to cache the set that is created from this list
in many cases while evaluating a revset.
author | Lucas Moscovicz <lmoscovicz@fb.com> |
---|---|
date | Tue, 21 Jan 2014 11:39:26 -0800 |
parents | 9985e188d940 |
children | da6bea33007b |
comparison
equal
deleted
inserted
replaced
20363:e3ee7ec85a15 | 20364:a6cf48b2880d |
---|---|
185 if not funcsused.issubset(revset.safesymbols): | 185 if not funcsused.issubset(revset.safesymbols): |
186 return MODE_KEYWORD, query | 186 return MODE_KEYWORD, query |
187 | 187 |
188 mfunc = revset.match(web.repo.ui, revdef) | 188 mfunc = revset.match(web.repo.ui, revdef) |
189 try: | 189 try: |
190 revs = mfunc(web.repo, list(web.repo)) | 190 revs = mfunc(web.repo, revset.baseset(web.repo)) |
191 return MODE_REVSET, revs | 191 return MODE_REVSET, revs |
192 # ParseError: wrongly placed tokens, wrongs arguments, etc | 192 # ParseError: wrongly placed tokens, wrongs arguments, etc |
193 # RepoLookupError: no such revision, e.g. in 'revision:' | 193 # RepoLookupError: no such revision, e.g. in 'revision:' |
194 # Abort: bookmark/tag not exists | 194 # Abort: bookmark/tag not exists |
195 # LookupError: ambiguous identifier, e.g. in '(bc)' on a large repo | 195 # LookupError: ambiguous identifier, e.g. in '(bc)' on a large repo |