qat.experimental.system_data.materialisers.purr.decoder module
Compiler-owned decoder for jsonpickle-like PuRR payloads.
The PuRR calibration fixtures are serialised object graphs rather than plain transport JSON. This module decodes the supported jsonpickle markers into ordinary Python data while preserving reference relationships needed by the boundary adapter.
- class PurrJsonpickleDecoder(*, extra_reduce_target_types=None, extra_reduce_target_suffixes=None)
Bases:
objectStateful decoder for PuRR jsonpickle-like payloads.
The decoder owns per-run state such as object reference tables and deferred lookups, allowing the public decode API to stay pure and stateless from the caller’s point of view.
- decode(payload)
Decode one raw PuRR payload into plain Python data.
The returned structure may still contain shared references, but it no longer contains jsonpickle control markers.
- Return type:
dict[str,Any]
- decode_jsonpickle_payload(payload, *, extra_reduce_target_types=None, extra_reduce_target_suffixes=None)
Decode a jsonpickle-like payload into plain Python data.
- Parameters:
- Return type:
dict[str,Any]- Returns:
Decoded payload with jsonpickle markers removed.