4 个版本
使用旧的 Rust 2015
0.1.3 | 2024 年 8 月 3 日 |
---|---|
0.1.2 | 2017 年 4 月 12 日 |
0.1.1 | 2016 年 11 月 21 日 |
0.1.0 | 2016 年 11 月 9 日 |
#813 在 数据结构
每月 161 次下载
34KB
803 代码行
区间树时钟
itc2008 的实现
文档
lib.rs
:
区间树时钟
itc 包实现了在 http://gsd.di.uminho.pt/members/cbm/ps/itc2008.pdf 中描述的区间树时钟
用法
use itc::*;
let s = Stamp::seed();
let (s1, s2) = s.fork();
let s1prime = s1.event();
let s2prime = s2.event();
let s3 = s2prime.join(&s1);
assert!(s.leq(&s1));
assert!(s1.leq(&s1prime));
assert!(!s1prime.leq(&s2prime));
assert!(s2prime.leq(&s3));
此模块实现了 4 个动词:fork、event、join、peek,以及 3 个衍生动词:send、receive 和 sync,以及用于建立因果关系/发生之前关系的部分排序。还包括一个简单的 ascii 编码表示,适合打印到 stdout 和用于协议。