Source code for aiohttp_json_api.encoder

"""JSON encoder extension."""

import functools
import json

from .jsonpointer import JSONPointer


[docs]class JSONEncoder(json.JSONEncoder): """Overloaded JSON encoder with JSONPointer support."""
[docs] def default(self, o): """Add JSONPointer serializing support to default json.dumps.""" if isinstance(o, JSONPointer): return o.path return super(JSONEncoder, self).default(o)
# pylint: disable=C0103 json_dumps = functools.partial(json.dumps, cls=JSONEncoder)