Skip to main content

Module catalog

Module catalog 

Source
Expand description

Trait and value-type contracts for every catalog object kind ReifyDB knows about.

Each submodule defines the trait that downstream catalog implementations satisfy and the associated metadata types for one logical kind (namespaces, tables, views, sources, sinks, series, ring buffers, flows, dictionaries, sum types, handlers, procedures, migrations, policies, identities, tokens, and so on), plus the cross-cutting modules for stable identifiers (id), key construction (key), on-disk layout (layout), change records (change), configuration (config), and column properties (property).

Invariant: introducing a new catalog object kind is a three-place change. The contract here, a new KeyKind byte in key/kind.rs, and the typed key in key/, must be added together. Skipping any of the three leaves the catalog inconsistent: an object with no on-disk identity, or a key with no contract, or a contract that no key can point at.

Modulesยง

authentication
binding
change
column
config
dictionary
flow
handler
id
identity
key
layout
migration
namespace
policy
procedure
property
ringbuffer
series
shape
sink
source
subscription
sumtype
table
task
test
token
view
vtable