comparison mercurial/hgweb/webutil.py @ 18388:083daee1b749

hgweb: simplify return value creation in for navgen We now have access to better syntax allowing a clearer version.
author Pierre-Yves David <pierre-yves.david@ens-lyon.org>
date Mon, 14 Jan 2013 16:52:35 +0100
parents 39616410aa32
children 82572533bc00
comparison
equal deleted inserted replaced
18387:39616410aa32 18388:083daee1b749
68 try: 68 try:
69 navbefore.insert(0, ("(0)", hex(nodefunc(0).node()))) 69 navbefore.insert(0, ("(0)", hex(nodefunc(0).node())))
70 except error.RepoError: 70 except error.RepoError:
71 pass 71 pass
72 72
73 def gen(l): 73 data = lambda i: {"label": i[0], "node": i[1]}
74 def f(**map): 74 return ({'before': lambda **map: (data(i) for i in navbefore),
75 for label, node in l: 75 'after': lambda **map: (data(i) for i in navafter)},)
76 yield {"label": label, "node": node}
77 return f
78
79 return (dict(before=gen(navbefore), after=gen(navafter)),)
80 76
81 def _siblings(siblings=[], hiderev=None): 77 def _siblings(siblings=[], hiderev=None):
82 siblings = [s for s in siblings if s.node() != nullid] 78 siblings = [s for s in siblings if s.node() != nullid]
83 if len(siblings) == 1 and siblings[0].rev() == hiderev: 79 if len(siblings) == 1 and siblings[0].rev() == hiderev:
84 return 80 return