Skip to main content

Module interface

Module interface 

Source
Expand description

Cross-crate trait surface. Each submodule defines the contract for one subsystem of the database.

Each submodule exposes the traits and value types that downstream crates implement and consume - covering the catalog, authentication, storage, evaluation, dataflow, change-data-capture, change-records, qualified identifiers, name-resolution results, and component versions. The WithEventBus trait at the top level is implemented by anything that owns or borrows the in-process event bus, so handler code can publish without holding a direct reference.

Invariant: traits in this module are object-safe wherever a downstream crate handles them as dyn Trait. The supervision and wiring layer holds erased references to storage backends, evaluators, and catalog stores; introducing a generic, an async fn, or a Self-typed return on such a trait silently breaks every consumer at the next compile.

Modules§

auth
catalog
Trait and value-type contracts for every catalog object kind ReifyDB knows about.
cdc
change
evaluate
Expression-evaluation contract types shared between the engine, the planner, and the catalog.
flow
identifier
resolved
store
version

Traits§

WithEventBus