Thalweg · API reference ← Main docs

Module types

Module types 

Source
Expand description

Value types shared across the catalog: table identity, desired vs live table state, column specs, comments, and credential vending.

These are pure data — no backend, no network. The reconcile planner (crate::reconcile) computes over them, and each crate::TableCatalog backend executes the resulting plan.

Structs§

ColumnSpec
A single column in a desired or live table schema.
Comment
A column description plus the authority that owns it.
DesiredTable
The target state the engine wants a table to be in, derived from an incoming Arrow RecordBatch schema plus contract/engine metadata.
SinkId
Identifies a sink registered as a writer of a table (ownership/coverage bookkeeping — see ADR-0053).
TableRef
Fully-qualified three-level table identity (catalog.schema.table).
TableState
The live state of a table as reported by a backend’s describe.
VendedCredentials
Temporary, scoped credentials vended by the catalog, inheriting the requesting principal’s privileges. The engine never holds static secrets.

Enums§

Access
The access a caller needs when vending credentials.
CommentAuthority
The origin of a column’s description, which decides who is authoritative for it (see the crate doc comment: engine-owned vs contract-owned).