Mercurial > hg
changeset 23873:9ef234021667
namespaces: use named args for namespace api
This is just a style change but makes adding new arguments more robust for
callers.
author | Sean Farley <sean.michael.farley@gmail.com> |
---|---|
date | Wed, 14 Jan 2015 19:55:20 -0800 |
parents | 9f48242929a9 |
children | fef1146b8442 |
files | mercurial/namespaces.py tests/test-log.t |
diffstat | 2 files changed, 22 insertions(+), 21 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/namespaces.py Wed Jan 14 19:39:13 2015 -0800 +++ b/mercurial/namespaces.py Wed Jan 14 19:55:20 2015 -0800 @@ -22,27 +22,27 @@ def __init__(self): self._names = util.sortdict() - # shorten the class name for less indentation - ns = namespace - # we need current mercurial named objects (bookmarks, tags, and # branches) to be initialized somewhere, so that place is here - n = ns("bookmarks", "bookmark", - lambda repo: repo._bookmarks.keys(), - lambda repo, name: tolist(repo._bookmarks.get(name)), - lambda repo, name: repo.nodebookmarks(name)) + bmknames = lambda repo: repo._bookmarks.keys() + bmknamemap = lambda repo, name: tolist(repo._bookmarks.get(name)) + bmknodemap = lambda repo, name: repo.nodebookmarks(name) + n = namespace("bookmarks", templatename="bookmark", listnames=bmknames, + namemap=bmknamemap, nodemap=bmknodemap) self.addnamespace(n) - n = ns("tags", "tag", - lambda repo: [t for t, n in repo.tagslist()], - lambda repo, name: tolist(repo._tagscache.tags.get(name)), - lambda repo, name: repo.nodetags(name)) + tagnames = lambda repo: [t for t, n in repo.tagslist()] + tagnamemap = lambda repo, name: tolist(repo._tagscache.tags.get(name)) + tagnodemap = lambda repo, name: repo.nodetags(name) + n = namespace("tags", templatename="tag", listnames=tagnames, + namemap=tagnamemap, nodemap=tagnodemap) self.addnamespace(n) - n = ns("branches", "branch", - lambda repo: repo.branchmap().keys(), - lambda repo, name: tolist(repo.branchtip(name, True)), - lambda repo, node: [repo[node].branch()]) + bnames = lambda repo: repo.branchmap().keys() + bnamemap = lambda repo, name: tolist(repo.branchtip(name, True)) + bnodemap = lambda repo, node: [repo[node].branch()] + n = namespace("branches", templatename="branch", listnames=bnames, + namemap=bnamemap, nodemap=bnodemap) self.addnamespace(n) def __getitem__(self, namespace):
--- a/tests/test-log.t Wed Jan 14 19:39:13 2015 -0800 +++ b/tests/test-log.t Wed Jan 14 19:55:20 2015 -0800 @@ -1567,12 +1567,13 @@ > > def reposetup(ui, repo): > foo = {'foo': repo[0].node()} - > ns = namespace("bars", "bar", - > lambda r: foo.keys(), - > lambda r, name: foo.get(name), - > lambda r, node: [name for name, n - > in foo.iteritems() - > if n == node]) + > names = lambda r: foo.keys() + > namemap = lambda r, name: foo.get(name) + > nodemap = lambda r, node: [name for name, n in foo.iteritems() + > if n == node] + > ns = namespace("bars", templatename="bar", listnames=names, + > namemap=namemap, nodemap=nodemap) + > > repo.names.addnamespace(ns) > EOF