Module crdt

Module crdt 

Source
Expand description

Conflict-free Replicated Data Types (CRDTs) for distributed systems

This module provides various CRDT implementations that can be used to build eventually consistent distributed applications.

Re-exports§

pub use list::ElementId;
pub use list::ElementMetadata;
pub use list::ListElement;
pub use list::ListStrategy;
pub use list::ListConfig;
pub use list::AddWinsList;
pub use list::RemoveWinsList;
pub use list::LwwList;
pub use tree::NodeId;
pub use tree::NodeMetadata;
pub use tree::TreeNode;
pub use tree::TreeStrategy;
pub use tree::TreeConfig;
pub use tree::AddWinsTree;
pub use tree::RemoveWinsTree;
pub use graph::VertexId;
pub use graph::EdgeId;
pub use graph::VertexMetadata;
pub use graph::EdgeMetadata;
pub use graph::Vertex;
pub use graph::Edge;
pub use graph::GraphStrategy;
pub use graph::GraphConfig;
pub use graph::AddWinsGraph;
pub use graph::RemoveWinsGraph;

Modules§

graph
list
tree

Structs§

GCounter
Counter that can be incremented/decremented
LwwMap
Last-Write-Wins Map
LwwRegister
Last-Write-Wins Register
ReplicaId
Unique identifier for a replica

Traits§

CRDT
Trait for CRDTs that have a replica ID
Mergeable
Trait for types that can be merged with other instances