Mercurial > public > mercurial-scm > hg-stable
diff mercurial/templateutil.py @ 38256:688fbb758ba9
templater: resolve type of dict key in getmember()
This seems more correct and is consistent with the future wrapped.contains()
function, where a key type has to be resolved depending on a container type.
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Fri, 04 May 2018 12:43:15 +0900 |
parents | 06d11cd90516 |
children | 41ae9b3cbfb9 |
line wrap: on
line diff
--- a/mercurial/templateutil.py Wed Mar 21 11:30:21 2018 +0900 +++ b/mercurial/templateutil.py Fri May 04 12:43:15 2018 +0900 @@ -41,6 +41,7 @@ def getmember(self, context, mapping, key): """Return a member item for the specified key + The key argument may be a wrapped object. A returned object may be either a wrapped object or a pure value depending on the self type. """ @@ -147,6 +148,7 @@ # TODO: maybe split hybrid list/dict types? if not util.safehasattr(self._values, 'get'): raise error.ParseError(_('not a dictionary')) + key = unwrapastype(context, mapping, key, self.keytype) return self._wrapvalue(key, self._values.get(key)) def _wrapvalue(self, key, val):