#![forbid(unsafe_code)]
#![warn(missing_docs)]
mod config;
#[cfg(feature = "replicate")]
mod config_secure;
mod config_stage;
mod dispatch;
#[cfg(feature = "host-log")]
mod host_log;
mod info;
mod assert_traits;
#[cfg(all(feature = "listener", not(target_arch = "wasm32")))]
mod listener;
mod metric;
mod modes;
mod op_manifest;
mod ops;
mod ops_atomic;
mod ops_atomic_all;
#[cfg(feature = "index")]
mod ops_atomic_all_index;
mod ops_atomic_all_reads;
mod ops_bitmap;
mod ops_blocking;
mod ops_bonus;
#[cfg(all(feature = "replicate", not(target_arch = "wasm32")))]
mod ops_feed;
mod ops_hash_ttl;
#[cfg(feature = "index")]
mod ops_index;
#[cfg(feature = "index")]
mod ops_index_changes;
#[cfg(feature = "index")]
mod ops_index_cold;
#[cfg(feature = "index")]
mod ops_index_sync;
#[cfg(feature = "index")]
mod ops_index_tidy;
#[cfg(all(feature = "index", feature = "persist", not(target_arch = "wasm32")))]
mod ops_index_window;
mod ops_keyspace;
mod ops_more;
mod ops_p2;
mod ops_p3;
mod ops_pipeline;
mod ops_reconcile;
mod ops_scan;
pub use ops_scan::KeysIter;
#[cfg(feature = "index")]
mod catalog_record;
mod ops_snapshot_view;
#[cfg(feature = "index")]
mod ops_table;
#[cfg(feature = "index")]
mod ops_view;
mod ops_zset_algebra;
mod ops_zset_flags;
mod store_glue;
pub use ops_atomic::AtomicCtx;
pub use ops_atomic_all::AtomicAllShards;
pub use kevy_store::BitOp;
pub use ops_pipeline::Pipeline;
mod pubsub;
mod pubsub_bus;
mod reaper;
#[cfg(feature = "persist")]
mod replay;
#[cfg(all(feature = "replicate", not(target_arch = "wasm32")))]
mod replica_glue;
#[cfg(all(feature = "replicate", not(target_arch = "wasm32")))]
mod replica_runner;
#[cfg(all(feature = "replicate", not(target_arch = "wasm32")))]
mod replica_source;
#[cfg(all(feature = "replicate", not(target_arch = "wasm32")))]
mod replica_wire;
mod shard;
#[cfg(feature = "persist")]
mod shard_restore;
#[cfg(all(feature = "tier", not(target_arch = "wasm32")))]
mod shard_tier;
mod store;
mod store_inner;
#[cfg(feature = "persist")]
mod store_persist;
mod store_tick;
mod store_wire;
mod verb_keys;
#[cfg(feature = "tier")]
pub use config::TierBudgetSpec;
pub use config::{Config, EvictionPolicy, TtlReaperMode};
#[cfg(feature = "replicate")]
pub use config_secure::{Keypair, LinkKeys};
#[cfg(feature = "tier")]
mod config_tier;
#[cfg(feature = "persist")]
pub use config::{AppendFsync, ReplayMode};
pub use info::{KevyInfo, KevyTierCompression, KevyTierInfo};
#[cfg(feature = "index")]
pub use kevy_index::SortOrder;
#[cfg(feature = "index")]
pub use kevy_index::{AggBy, AnnSpec, GroupStats, Leaf as ViewLeaf, Tree as ViewTree, ViewMode};
#[cfg(feature = "index")]
pub use kevy_index::{
Cursor as IndexCursor, IndexKind, IndexValue, SegmentStats as IndexStats,
ValType as IndexValType,
};
#[cfg(feature = "persist")]
pub use kevy_persist::RewriteStats;
#[cfg(all(feature = "replicate", not(target_arch = "wasm32")))]
pub use kevy_replicate::feed::FeedPosition;
pub use kevy_store::{
ExpireStats, GetShared, HExpireCode, HExpireCond, InsertPosition, KevyError, KevyResult,
ScoreBound, StoreError, ZAggregate, ZaddFlags, ZaddReport,
};
#[cfg(feature = "persist")]
pub use metric::KevyMetric;
pub use metric::OpenReport;
pub use modes::CopyMode;
#[cfg(feature = "text")]
pub use modes::TokenPositions;
#[cfg(all(feature = "replicate", not(target_arch = "wasm32")))]
pub use ops_feed::{Change, ChangeBatch, FeedError, PrefixInfo};
#[cfg(feature = "index")]
pub use ops_index::IndexPage;
#[cfg(feature = "index")]
pub use ops_index::advise::IdxAdvice;
#[cfg(feature = "index")]
pub use ops_index::claused::ScalarPage;
#[cfg(feature = "text")]
pub use ops_index::highlight::{FacetCounts, MatchPage};
#[cfg(feature = "text")]
pub use ops_index::opts::MatchOpts;
#[cfg(feature = "index")]
pub use ops_index::opts::{ScalarQueryOpts, ValueFilter};
pub use ops_reconcile::ReconcileReport;
pub use ops_snapshot_view::{Snapshot, SnapshotEntry};
#[cfg(feature = "index")]
pub use ops_view::ViewPage;
#[cfg(feature = "index")]
pub use kevy_index::{IndexVerify, OrderPath, TableEnsure, TableIndex, TableSpec, TableVerify};
pub use kevy_store::Value;
pub use pubsub::{PubsubEvent, Subscription};
pub use store::{Store, WeakStore};
#[cfg(doctest)]
#[doc = include_str!("../README.md")]
struct ReadmeDoctests;
#[cfg(all(target_arch = "wasm32", target_os = "unknown"))]
pub use kevy_store::{set_clock_ns, set_wall_clock_ms};