pytest_experiments.json_tools module¶
- class TypeDispatchedJSONEncoder(*, skip_unknown_types=True, **kwargs)[source]¶
Bases:
json.encoder.JSONEncoder
- default(o: Any) Any [source]¶
Implement this method in a subclass such that it returns a serializable object for
o
, or calls the base implementation (to raise aTypeError
).For example, to support arbitrary iterators, you could implement default like this:
def default(self, o): try: iterable = iter(o) except TypeError: pass else: return list(iterable) # Let the base class default method raise the TypeError return JSONEncoder.default(self, o)