xstm 0.1.0

A Rust-implemented Software Transactional Memory (STM) library using TL2 (Transactional Locking II) algorithm
Documentation
#![doc = include_str!("../ReadMe.md")]

mod version;
mod version_clock;

mod transaction;
pub use transaction::Transaction;

mod context;
pub use context::Context;

mod var;
pub use var::TVar;

mod stm;
pub use stm::Stm;

mod versioned_lock;

#[cfg(feature = "retry_info")]
#[derive(Debug, Copy, Clone, PartialEq, PartialOrd, Eq, Ord, Hash)]
pub enum StmError {
    Retry(&'static str),
}
#[cfg(not(feature = "retry_info"))]
#[derive(Debug, Copy, Clone, PartialEq, PartialOrd, Eq, Ord, Hash)]
pub enum StmError {
    Retry,
}