pub mod checkout;
pub mod commit;
mod commit_error;
pub mod conflict;
pub mod fork;
pub mod handle;
pub mod lifecycle;
pub mod merge;
pub mod persist;
pub mod policy;
pub mod prune;
mod refrecord;
pub mod refstore;
pub mod registry;
pub mod snapshot;
pub use checkout::{CheckoutError, ReadOnlyView, checkout};
pub use commit::{
BranchCommitError, CommitDurability, CommitOutcome, CommitRequest, commit_branch, merge,
};
pub use conflict::{ConflictError, ConflictInput, ConflictPolicy, CustomMergeFn};
pub use fork::{
create_branch_with_kind, fork, fork_from_with_kind, fork_registered, fork_shards,
fork_shards_registered,
};
pub use handle::{BranchError, BranchHandle, ShardId};
pub use lifecycle::{create_branch, fork_at, fork_from, open_branch, remove_branch};
pub use merge::{MergeConflict, MergeError, MergeReport};
pub use policy::{BranchKind, BranchPolicyError};
pub use prune::{PruneError, PruneReport, prune};
pub use refstore::{BranchRefError, BranchRefRecord, BranchRefStore, BranchShardRef};
pub use registry::BranchRegistry;
pub use snapshot::{
CommitLog, CommitLogEntry, SnapshotEntry, SnapshotError, SnapshotRegistry, Timestamp,
current_timestamp,
};
#[cfg(test)]
mod barrier_order_tests;
#[cfg(test)]
mod crash_recovery_tests;
#[cfg(test)]
mod crash_support;
#[cfg(test)]
mod crash_window_tests;
#[cfg(test)]
mod hi_proptest;
#[cfg(test)]
mod lease_aba_tests;
#[cfg(test)]
mod prune_interleave_tests;
#[cfg(test)]
mod registry_spy_tests;
#[cfg(test)]
mod restart_e2e_tests;