Skip to main content

Crate sofie_db

Crate sofie_db 

Source

Re-exports§

pub use aggregate::Aggregate;
pub use aggregate::Field;
pub use aggregate::Meta;
pub use aggregate::RaisedEvent;
pub use aggregate::Source;
pub use aggregate::read_columns;

Modules§

action
The route or job a commit is made for, which history records beside the actor.
worker

Macros§

embed
A file by its path from the calling crate’s root, the path a development build rereads; compiled = embeds what the build script wrote to OUT_DIR from it instead, and embed!("folder", [names]) gives a &[File].

Structs§

Across
Whether records match across every owner, without any of them leaving: no rows, fields or ids.
AggregateTable
CatalogColumn
Claimed
Its attempt fences every later write, so an expired lease can neither finish nor fail it.
Column
Condition
Db
DeadMessage
DeadMessages
Decoding
Entry
ExpectedRows
Field
File
A file the binary carries: its source path, which development rereads, and its bytes.
Fired
Guard
Refuses its commit with its field error when a matching record exists by then; replies nothing.
GuardCheck
Keeps its outcome for the committing task to audit: a driver may check on another thread.
Id
InputFields
Listening
Without a subscription it polls every interval and tries to subscribe again; a renewed subscription ends the wait at once, since a change made while nobody listened woke nobody.
MessageSql
Every insert binds the message columns first, as $1 to $7: id, kind, name, payload, available_at, traceparent, actor.
Messages
Due times follow the app’s clock, so a test can move them; leases follow the database’s.
Meta
Migrations
Mismatch
Plan
PoolSettings
Query
RaisedEvent
Read
Has no way to write; its reach is fixed when made and cannot be widened.
Schema
Selected
Showing
Data a screen reads in place, which #[derive(ReadModel)] replies with.
Sort
Stamp
Timestamps
UniqueViolation
Uuid
RFC 9562; ordered by bytes so version 7 ids sort in creation order.
Versioned
Every aggregate has it, first.
Write

Enums§

Channel
Engine
MessageKind
MismatchKind
Reach
Records without an owner stay readable.
Reply
Step
Trigger
Unmet
What a statement that touched another number of rows than expected fails with.

Constants§

REFERENCE_REFUSAL
SQLite names no foreign key it refuses, so neither engine’s refusal does.

Traits§

Aggregate
AnyOutcome
Behavior
Never runs I/O.
Call
Catalog
Context
Create
Dialect
Rendered SQL is cached by the dialect’s type, so it must not vary per instance.
Driver
Event
FieldNames
The fields an input reads, so a query string’s other keys are told apart before reading.
Input
InputValue
Load
MigrationsLock
Outcome
ReadOnly
What a GET may answer with: its outcome is replied, never committed.
ReplyData
Resolve
RowSink
Select
Source
Timestamped
Update
Uses
Validate
Wakeups
Writes
A GET’s context leaves it out, so a GET cannot take a write-side argument.

Functions§

bind
Named by the route segment after the aggregate, and within the parents the context names.
check_refusal
column_types
deserialize_fields
Every missing, invalid or unknown field is reported before the refusal of try_new.
erase
exclusion_refusal
forget_principal
Erases the framework’s own rows of a principal, such as product events, and records it for unless_forgotten; planned first, so no write racing the erasure outlives it.
forgotten
in_select
Held where column equals selected of a row of B matching condition, in the same query.
join_all
Polls in order first, so requests sent on a first poll leave as one pipeline.
lone_value
optional_lone_value
ping_queue
query_decoded
query_values
Each row as owned values, for the few reads that have no type to decode into.
read_cached
read_columns
read_untracked
refuse_unlisted_move
row_values
traced_statement
Outside traced work no span opens, or the worker’s polling would trace every second.
unless_forgotten
The commit conflicts if the principal was forgotten since it was read; the retry sees it.

Type Aliases§

BoxFuture
Run