summaryrefslogtreecommitdiff
path: root/cherrypy/_json.py
blob: 0c2a0f0e0a127292b37bfb70cd184b8fd25fc2dd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
"""
JSON support.

Expose preferred json module as json and provide encode/decode
convenience functions.
"""

try:
    # Prefer simplejson
    import simplejson as json
except ImportError:
    import json


__all__ = ['json', 'encode', 'decode']


decode = json.JSONDecoder().decode
_encode = json.JSONEncoder().iterencode


def encode(value):
    """Encode to bytes."""
    for chunk in _encode(value):
        yield chunk.encode('utf-8')