alkstore 0.1.0

The alkstore contract crate: one reactive store trait surface — notify, streams, durable queues, TTL locks, outbox, scheduler — implemented by the alkstore-sqlite/-postgres/-mem engine crates; no driver dependencies
Documentation
//! alkstore — the unified trait surface, value types, error model, and
//! contract documentation of the store contract (ADR-001, ADR-008).
//!
//! This crate is the contract artifact: no driver dependencies, ever.
//! Engine crates (`alkstore-sqlite`, `alkstore-postgres`) depend on
//! this crate and implement its traits.
//!
//! This crate's docs are part of the contract artifact (ADR-001 §1) —
//! every public item carries doc text, and the missing-docs lint is
//! part of the standing gates.

#![warn(missing_docs)]

mod error;
mod event_receiver;
mod future;
mod job;
mod job_handle;
mod lock;
mod opts;
mod outbox;
mod payload;
mod queue;
mod schedule;
mod stop_token;
mod store;
mod stream;
mod stream_handle;
mod tx;
mod validation;
mod wake;
mod wake_receiver;

pub use error::{Error, Result};
pub use event_receiver::EventReceiver;
pub use future::BoxedFuture;
pub use job::{Job, JobState};
pub use job_handle::JobHandle;
pub use lock::Lock;
pub use opts::{EnqueueOpts, QueueOpts, ScheduleOpts};
pub use outbox::{Delivery, Outbox};
pub use payload::{encode_payload, payload_as};
pub use queue::Queue;
pub use schedule::Schedule;
pub use stop_token::StopToken;
pub use store::{Store, WithTxClosure};
pub use stream::StreamEvent;
pub use stream_handle::StreamHandle;
pub use tx::TxHandle;
pub use validation::{
    NameKind, RESERVED_LISTENER_RECONNECTED, RESERVED_PREFIX, validate_local_name, validate_name,
    validate_shared_name,
};
pub use wake::Wake;
pub use wake_receiver::WakeReceiver;

#[cfg(test)]
mod tests;
#[cfg(test)]
mod trait_probe_tests;
#[cfg(test)]
mod value_type_tests;