##// END OF EJS Templates
match: add visitchildrenset complement to visitdir...
match: add visitchildrenset complement to visitdir `visitdir(d)` lets a caller query whether the directory is part of the matcher. It can receive a response of 'all' (yes, and all children, you can stop calling visitdir now), False (no, and no children either), or True (yes, either something in this directory or a child is part of the matcher). `visitchildrenset(d)` augments that by instead of returning True, it returns a list of items to actually investigate. With this, code can be modified from: for f in self.all_items: if match.visitdir(self.dir + '/' + f): <do stuff> to be: for f in self.all_items.intersect(match.visitchildrenset(self.dir)): <do stuff> use of this function can provide significant performance improvements, especially when using narrow (so that the matcher is much smaller than the stuff we see on disk) and/or treemanifests (so that we can avoid loading manifests for trees that aren't part of the matcher). Differential Revision: https://phab.mercurial-scm.org/D4130

File last commit:

r25526:32f76ecc default
r38990:081cc9a9 default
Show More
branches.tmpl
27 lines | 1.0 KiB | application/x-cheetah | CheetahLexer
{header}
<title>{repo|escape}: branches</title>
<link rel="alternate" type="application/atom+xml"
href="{url|urlescape}atom-branches" title="Atom feed for {repo|escape}: branches">
<link rel="alternate" type="application/rss+xml"
href="{url|urlescape}rss-branches" title="RSS feed for {repo|escape}: branches">
</head>
<body>
<div class="buttons">
<a href="{url|urlescape}log{sessionvars%urlparameter}">changelog</a>
<a href="{url|urlescape}shortlog{sessionvars%urlparameter}">shortlog</a>
<a href="{url|urlescape}graph{sessionvars%urlparameter}">graph</a>
<a href="{url|urlescape}tags{sessionvars%urlparameter}">tags</a>
<a href="{url|urlescape}file{sessionvars%urlparameter}">files</a>
<a href="{url|urlescape}help{sessionvars%urlparameter}">help</a>
<a type="application/rss+xml" href="{url|urlescape}rss-branches">rss</a>
<a type="application/atom+xml" href="{url|urlescape}atom-branches">atom</a>
</div>
<h2><a href="/">Mercurial</a> {pathdef%breadcrumb} / branches</h2>
<ul id="tagEntries">
{entries%branchentry}
</ul>
{footer}