1个不稳定版本

0.0.4 2021年9月9日

#1041 in 异步

Apache-2.0

26KB
552

Simplee |> Euklid

Rust的CRDTs库。

rust build test clippy Coverage Status Tag Last commit Repo size

Github Actions


Dot

Dot 实现了一个标记版本。

extern crate euklid;
use euklid::Dot;

// Create a dot for actor Alice.
let mut dot = Dot::new("Alice".to_string(), 0);
// Increment the dot.
dot.apply_inc();

更多示例可以在示例文件中找到。


Vector Clock

VClock 实现了一个向量时钟。

extern crate euklid;
use euklid::{Dot, VClock};

// Create a vclock and increment the counter for user A.
let mut a = VClock::new();

// Increment the counter for actor A
a.apply(a.inc_op("A"));

// Increment the counter for actor B
a.apply(a.inc_op("B"));

更多示例可以在示例文件中找到。


G-Counter

GCounter 实现了一个只增长的计数器。

xtern crate euklid;
use euklid::{Dot, GCounter};

// Create a vclock and increment the counter for user A.
let mut a = VGounter::new();

// Increment the counter for actor A
a.apply(a.inc_op("A"));

// Increment the counter for actor B
a.apply(a.inc_op("B"));

// Increase the counter for actor A by 5
a.apply(a.step_op("A", 5));

更多示例可以在示例文件中找到。


资源

谢谢!!

您可以通过[email protected]与我联系。代码在爱沙尼亚美丽的萨雷马岛上的Päädu设计和编写。

无运行时依赖