[PATCH 3 of 4] templatefilters: use list comprehension in json()
Yuya Nishihara
yuya at tcha.org
Sat Apr 1 23:28:23 EDT 2017
# HG changeset patch
# User Yuya Nishihara <yuya at tcha.org>
# Date 1491101664 -32400
# Sun Apr 02 11:54:24 2017 +0900
# Node ID eba702fdc933ed84d5f53225bfe87ebc40c7831e
# Parent 54017aea6a3b5c7a668f44df4399102b94a9eecd
templatefilters: use list comprehension in json()
Not important, but the code slightly looks better.
diff --git a/mercurial/templatefilters.py b/mercurial/templatefilters.py
--- a/mercurial/templatefilters.py
+++ b/mercurial/templatefilters.py
@@ -230,15 +230,11 @@ def json(obj):
elif isinstance(obj, str):
return '"%s"' % encoding.jsonescape(obj, paranoid=True)
elif util.safehasattr(obj, 'keys'):
- out = []
- for k, v in sorted(obj.iteritems()):
- s = '%s: %s' % (json(k), json(v))
- out.append(s)
+ out = ['%s: %s' % (json(k), json(v))
+ for k, v in sorted(obj.iteritems())]
return '{' + ', '.join(out) + '}'
elif util.safehasattr(obj, '__iter__'):
- out = []
- for i in obj:
- out.append(json(i))
+ out = [json(i) for i in obj]
return '[' + ', '.join(out) + ']'
else:
raise TypeError('cannot encode type %s' % obj.__class__.__name__)
More information about the Mercurial-devel
mailing list