3 个版本 (破坏性更新)

0.8.0 2020年3月31日
0.1.0 2020年3月25日
0.0.1 2019年12月27日

#19 in #unsigned

BSD-3-Clause-Clear

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 中的类型,它们封装了加密原语的操作。您将使用它们将密钥传递到 MesherPacket。它们确实提供了安全密钥生成,但这个crate 不会 为您存储密钥,如果您需要这样做的话。

struct Message 表示收到的消息。

当然,还有一个 fail 模块,其中包含预期的 enum MesherFailtype Result 用于此 crate 的错误处理。以牺牲全局命名空间混乱为代价,重新导出所有常用部分,以便于更方便地使用。

use mesher::prelude::*;

依赖关系

~20MB
~122K SLoC