Skip to main content

obix/
lib.rs

1#![cfg_attr(feature = "fail-on-warnings", deny(warnings))]
2#![cfg_attr(feature = "fail-on-warnings", deny(clippy::all))]
3#![forbid(unsafe_code)]
4
5pub mod prelude {
6    pub use es_entity;
7    pub use serde;
8    pub use serde_json;
9    pub use sqlx;
10}
11
12mod config;
13mod handle;
14pub mod inbox;
15pub mod out;
16mod sequence;
17mod tables;
18
19#[cfg(feature = "test-utils")]
20pub mod test_utils;
21
22pub use config::{
23    DEFAULT_BACKFILL_PAGE_SIZE, DEFAULT_GAP_FILL_GRACE, DEFAULT_IDLE_RESYNC_INTERVAL,
24    DEFAULT_NOTIFY_DEBOUNCE, DEFAULT_PARTITION_MAINTAINER_INTERVAL, DEFAULT_PARTITION_PREMAKE,
25    DEFAULT_PARTITION_WIDTH, DEFAULT_PERSIST_EVENTS_BATCH_SIZE, MailboxConfig,
26};
27pub use inbox::{
28    Inbox, InboxConfig, InboxError, InboxEvent, InboxEventId, InboxEventStatus, InboxHandler,
29    InboxIdempotencyKey, InboxResult,
30};
31pub use obix_macros::{MailboxTables, OutboxEvent};
32pub use out::{
33    BatchOp, CursorError, DecodeFailure, EventCtx, EventSubscription, FlushError, FlushOp, Handled,
34    HandlerCheckpointError, HandlerSnapshot, HandlerStreamStatus, IsolatedOp, OpCursor, Outbox,
35    OutboxEventHandler, OutboxEventJobConfig, PartitionMaintainerConfig, Partitions,
36    PostPersistHook, RegisteredEventHandler, UndecodableEventError,
37};
38pub use sequence::EventSequence;
39pub use tables::MailboxTables;
40#[doc(hidden)]
41pub use tables::{
42    decode_persistent_event, record_ephemeral_event_type_undecodable,
43    record_ephemeral_payload_undecodable, record_tracing_context_undecodable,
44};