Source code for mcap.serialization

from typing import Any, Dict, Union

from .records import McapRecord

ValueType = Union[bytes, str, int, Dict[str, str]]


[docs]def normalize_value(value: ValueType) -> Any: if isinstance(value, bytes): return [normalize_value(v) for v in value] if isinstance(value, int): return str(value) if isinstance(value, dict): return {k: normalize_value(v) for k, v in value.items()} else: return value
[docs]def stringify_record(record: McapRecord): fields = [(k, normalize_value(v)) for k, v in sorted(record.__dict__.items())] return {"type": type(record).__name__, "fields": fields}