Skip to main content

citadel_sync/
lib.rs

1pub mod apply;
2pub mod crdt;
3pub mod diff;
4pub mod hlc;
5pub mod local_reader;
6pub mod memory_transport;
7pub mod node_id;
8pub mod noise_transport;
9pub mod patch;
10pub mod protocol;
11pub mod session;
12pub mod sync_key;
13pub mod tcp_transport;
14pub mod transport;
15
16pub use apply::{
17    apply_patch, apply_patch_to_table, apply_patch_to_table_txn, apply_patch_to_txn, ApplyResult,
18};
19pub use crdt::{
20    decode_lww_value, encode_lww_value, lww_merge, CrdtMeta, DecodeError, DecodedValue, EntryKind,
21    MergeResult, CRDT_HEADER_SIZE, CRDT_META_SIZE,
22};
23pub use diff::{merkle_diff, DiffEntry, DiffResult, MerkleHash, PageDigest, TreeReader};
24pub use hlc::{
25    ClockError, HlcClock, HlcTimestamp, ManualClock, PhysicalClock, SystemClock, HLC_TIMESTAMP_SIZE,
26};
27pub use local_reader::LocalTreeReader;
28pub use memory_transport::MemoryTransport;
29pub use node_id::NodeId;
30pub use noise_transport::NoiseTransport;
31pub use patch::{PatchEntry, PatchError, SyncPatch};
32pub use protocol::{ProtocolError, SyncMessage, TableInfo};
33pub use session::{SyncConfig, SyncDirection, SyncOutcome, SyncSession};
34pub use sync_key::SyncKey;
35pub use tcp_transport::TcpTransport;
36pub use transport::{SyncError, SyncTransport};