mercurial/templatefilters.py
changeset 50608 046b9cce5850
parent 49494 c96ed4029fda
child 50609 90945014f4e4
equal deleted inserted replaced
50607:bf7ad17b0a58 50608:046b9cce5850
   337         return b'"%s"' % encoding.jsonescape(obj, paranoid=paranoid)
   337         return b'"%s"' % encoding.jsonescape(obj, paranoid=paranoid)
   338     elif isinstance(obj, type(u'')):
   338     elif isinstance(obj, type(u'')):
   339         raise error.ProgrammingError(
   339         raise error.ProgrammingError(
   340             b'Mercurial only does output with bytes: %r' % obj
   340             b'Mercurial only does output with bytes: %r' % obj
   341         )
   341         )
   342     elif util.safehasattr(obj, b'keys'):
   342     elif util.safehasattr(obj, 'keys'):
   343         out = [
   343         out = [
   344             b'"%s": %s'
   344             b'"%s": %s'
   345             % (encoding.jsonescape(k, paranoid=paranoid), json(v, paranoid))
   345             % (encoding.jsonescape(k, paranoid=paranoid), json(v, paranoid))
   346             for k, v in sorted(obj.items())
   346             for k, v in sorted(obj.items())
   347         ]
   347         ]