kernels.from_arrow()

Reconstruct whatever to_arrow() wrote, dispatching on ibnr.kind.

Usage

Source

kernels.from_arrow(
    data,
    *,
    expect=None,
    **kwargs,
)

expect names the kind the caller is prepared to receive, and anything else is refused rather than decoded. Routing on the payload’s own kind is right for a router that will hand the result on, and wrong everywhere a caller has already committed to a type - which is why every typed from_arrow classmethod in this package passes its own kind here. Without it PredictiveDistribution.from_arrow(triangle_bytes) returns a Triangle: a real, correctly decoded artifact of the wrong type, whose error surfaces somewhere else as a missing attribute.

kwargs reach the per-kind decoder; today only Triangle takes one (backend=).