Mercurial > public > mercurial-scm > hg
comparison mercurial/formatter.py @ 22476:a0829ec34dbd
formatter: convert float value to json
It will be used to encode ctx.date().
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Wed, 17 Sep 2014 22:21:01 +0900 |
parents | 17eeda31e52b |
children | 06c8b58647b9 |
comparison
equal
deleted
inserted
replaced
22475:17eeda31e52b | 22476:a0829ec34dbd |
---|---|
89 self._ui.write(cPickle.dumps(self._data)) | 89 self._ui.write(cPickle.dumps(self._data)) |
90 | 90 |
91 def _jsonifyobj(v): | 91 def _jsonifyobj(v): |
92 if isinstance(v, tuple): | 92 if isinstance(v, tuple): |
93 return '[' + ', '.join(_jsonifyobj(e) for e in v) + ']' | 93 return '[' + ', '.join(_jsonifyobj(e) for e in v) + ']' |
94 elif isinstance(v, int): | 94 elif isinstance(v, (int, float)): |
95 return '%d' % v | 95 return str(v) |
96 else: | 96 else: |
97 return '"%s"' % encoding.jsonescape(v) | 97 return '"%s"' % encoding.jsonescape(v) |
98 | 98 |
99 class jsonformatter(baseformatter): | 99 class jsonformatter(baseformatter): |
100 def __init__(self, ui, topic, opts): | 100 def __init__(self, ui, topic, opts): |