Documentation
¶
Overview ¶
Package leewayrender bridges a captured errkind.Error into the leeway widget pipeline (Table2CardEmitter and any other streamreadaccess.SinkI).
Pipeline (per call):
errkind.Error → ErrorColumns.Marshal (sparse-CBOR bytes)
→ cborarrow.Convert (Arrow IPC stream)
→ ipc.NewReader (arrow.RecordBatch)
→ Driver.DriveRecordBatch (SinkI)
The Driver / TableDesc / IR are shared singletons built lazily on first call — they describe the table schema, which is process-wide. Each Render allocates fresh RecordBatches because the error data is per-call.
ADR-0042 M5+ retrofit of the original rowmarshall.leewayrender.
Index ¶
Constants ¶
This section is empty.
Variables ¶
var PackageProps = packageprops.Props{ WASMWASI: packageprops.WASMBlocked, WASMJS: packageprops.WASMBlocked, WASMFreestanding: packageprops.WASMBlocked, }
PackageProps records this package's curated properties (ADR-0080). Seeded by `boxer code analysis golang wasmsurvey props generate`; curate by hand. The same group's `props verify` reconciles it.
Functions ¶
func Render ¶
func Render(sink streamreadaccess.SinkI, e errkind.Error) (err error)
Render drives one errkind.Error through the full leeway widget pipeline and into `sink` (typically a leewaywidgets.Table2CardEmitter). An Error with no facts (Len(Messages) == 0) renders nothing — callers may invoke unconditionally.
Suitable for per-frame use: the Driver and schema artefacts are cached; only the RowBinary payload + Arrow record batches are built fresh each call.
Types ¶
This section is empty.