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):