netunicorn.base.utils.UnicornEncoder

class UnicornEncoder(*, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, sort_keys=False, indent=None, separators=None, default=None)[source]

Bases: JSONEncoder

Custom JSON encoder for netunicorn objects.

Attributes

item_separator

key_separator

Methods

default

Overriden default method for JSONEncoder.

encode

Return a JSON string representation of a Python data structure.

iterencode

Encode the given object and yield each string representation as available.

default(obj)[source]

Overriden default method for JSONEncoder.

Parameters:

obj (Any) – Object to be serialized.

Returns:

Any – Serialized object.

encode(o)[source]

Return a JSON string representation of a Python data structure.

>>> from json.encoder import JSONEncoder
>>> JSONEncoder().encode({"foo": ["bar", "baz"]})
'{"foo": ["bar", "baz"]}'
iterencode(o, _one_shot=False)[source]

Encode the given object and yield each string representation as available.

For example:

for chunk in JSONEncoder().iterencode(bigobject):
    mysocket.write(chunk)