seqmarked/
lib.rs

1//! # seqmarked
2//!
3//! Sequence-numbered values with tombstone support for LSM trees and versioned data.
4//!
5//! ## Core Types
6//!
7//! - [`Marked<D>`]: Data that can be marked as tombstone
8//! - [`SeqMarked<D>`]: Sequence-numbered marked value
9//!
10//! ## Example
11//!
12//! ```rust
13//! use seqmarked::SeqMarked;
14//!
15//! let v1 = SeqMarked::new_normal(1, "data");
16//! let v2 = SeqMarked::new_normal(2, "data");
17//! let v2_ts = SeqMarked::<&str>::new_tombstone(2);
18//!
19//! assert!(v1 < v2); // ordered by sequence
20//! assert!(v2 < v2_ts); // ordered by tombstone > normal
21//! ```
22
23mod marked;
24mod seq_marked;
25
26#[cfg(test)]
27pub(crate) mod testing;
28
29pub use marked::Marked;
30pub use seq_marked::SeqMarked;