arxiv.canonical.serialize.encoder module

Provides a CanonicalEncoder for domain objects.

class arxiv.canonical.serialize.encoder.CanonicalEncoder(*, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, sort_keys=False, indent=None, separators=None, default=None)[source]

Bases: json.encoder.JSONEncoder

Encodes domain objects in this package for serialization.

encode(obj)[source]

Serialize objects in this application domain.

Return type

Any

unpack(obj)[source]

Recursively search for domain objects, and unpack them to dicts.

Return type

Any

unpack_canonical_file(obj)[source]

Unpack a domain.File.

Return type

Dict

unpack_default(obj)[source]

Fallback unpack method for any domain object.

Return type

Dict

unpack_uuid(obj)[source]
Return type

Dict