3 个版本 (破坏性更新)
0.8.0 | 2020年3月31日 |
---|---|
0.1.0 | 2020年3月25日 |
0.0.1 | 2019年12月27日 |
#19 in #unsigned
33KB
544 行
关于此库背后的概念信息,请参阅项目仓库的 README 文件。[链接](https://github.com/nic-hartley/mesher/blob/master/README.md)。本 API 文档的其余部分假设您已阅读并理解了它,因此不会进行解释。README 文件也位于仓库根目录中,这是标准的。
mesher API 相对简单,基于三个部分,反映了 README 中描述的概念
struct Mesher
协调其余对象,例如管理传输、自动处理弹跳等。trait Transport
定义了 mesher 使用以控制传输的接口。如果您需要它们,例如用于测试,则可以在[链接](https://docs.rs/mesher/0.8.0/debug_transports/index.html)中找到调试传输。struct Packet
使构建签名和未签名数据包变得更加容易。
还值得一提的是 mesher::crypto
中的类型,它们封装了加密原语的操作。您将使用它们将密钥传递到 Mesher
和 Packet
。它们确实提供了安全密钥生成,但这个crate 不会 为您存储密钥,如果您需要这样做的话。
struct Message
表示收到的消息。
当然,还有一个 fail
模块,其中包含预期的 enum MesherFail
和 type Result
用于此 crate 的错误处理。以牺牲全局命名空间混乱为代价,重新导出所有常用部分,以便于更方便地使用。
use mesher::prelude::*;
依赖关系
~20MB
~122K SLoC