Skip to content

yggdrasil.pickle.ser.media

media

Pickle serializers for :class:MediaType, :class:MimeType, and :class:Codec.

Wire layout

MimeTypeSerialized payload = UTF-8 encoded MimeType name (e.g. b"JSON")

CodecSerialized payload = UTF-8 encoded Codec name (e.g. b"gzip")

MediaTypeSerialized payload = UTF-8 encoded "<mime_name>" or "<mime_name>+<codec_name>" (e.g. b"PARQUET+gzip" or b"JSON")

MimeTypeSerialized dataclass

MimeTypeSerialized(head: Header, data: IO)

Bases: Serialized[MimeType]

Serialize a :class:MimeType as its .name attribute (e.g. "JSON").

Deserialization reconstructs via MimeType._BY_NAME registry lookup.

module_and_name staticmethod

module_and_name(obj: Any, *, fallback: str = '') -> tuple[str, str]

Return (module, qualname) for obj.

Robust across Python objects, including many C-extension / PyArrow objects where module may be missing or misleading.

CodecSerialized dataclass

CodecSerialized(head: Header, data: IO)

Bases: Serialized[Codec]

Serialize a :class:Codec as its .name attribute (e.g. "gzip").

Deserialization reconstructs via Codec.parse.

module_and_name staticmethod

module_and_name(obj: Any, *, fallback: str = '') -> tuple[str, str]

Return (module, qualname) for obj.

Robust across Python objects, including many C-extension / PyArrow objects where module may be missing or misleading.

MediaTypeSerialized dataclass

MediaTypeSerialized(head: Header, data: IO)

Bases: Serialized[MediaType]

Serialize a :class:MediaType as "<mime_name>" or "<mime_name>+<codec_name>".

Examples::

MediaType(MimeTypes.JSON)             → b"JSON"
MediaType(MimeTypes.PARQUET, GZIP)    → b"PARQUET+gzip"

module_and_name staticmethod

module_and_name(obj: Any, *, fallback: str = '') -> tuple[str, str]

Return (module, qualname) for obj.

Robust across Python objects, including many C-extension / PyArrow objects where module may be missing or misleading.