#缓冲区 #网络 #操作 #数据包 #

缓冲区

主要针对网络数据包缓冲区操作的库

10 个版本

0.5.0 2020 年 8 月 5 日
0.4.2 2019 年 9 月 24 日
0.3.4 2019 年 6 月 25 日
0.3.2 2019 年 5 月 3 日
0.1.0 2018 年 7 月 22 日

#246#数据包

Download history 6581/week @ 2024-03-16 4774/week @ 2024-03-23 5169/week @ 2024-03-30 6280/week @ 2024-04-06 5519/week @ 2024-04-13 7213/week @ 2024-04-20 3648/week @ 2024-04-27 6116/week @ 2024-05-04 7452/week @ 2024-05-11 5571/week @ 2024-05-18 5658/week @ 2024-05-25 6912/week @ 2024-06-01 6647/week @ 2024-06-08 7204/week @ 2024-06-15 5492/week @ 2024-06-22 3562/week @ 2024-06-29

23,567 每月下载量
用于 4 个crate (2 个直接)

BSD-3-Clause

5KB
55

缓冲区

处理缓冲区操作的库

目的

此库主要针对简单网络序列化和反序列化,适用于栈分配的结构类型。它提供了一个宏来生成一个联合类型,允许访问字段以进行检查,以及底层的缓冲区以进行网络传输。


lib.rs:

方法

此crate旨在提供一个行为如下所示的宏

  • 提供的宏采用更严格的方法。它使用过程宏和联合来在向结构体中的字段写入时提供一定程度的安全性,同时允许底层结构体被解释为切片。这是一个类似C的工作流程,但确实提供了一些有用的Rust保证,例如防止缓冲区溢出和边界检查。一个非常重要的注意事项是,使用提供的进程宏的结构体必须完全堆栈分配。如果使用某些防止编译时计算大小的构造,则编译将失败。因此,这实际上应该只用作Rust的替代品,在像解析网络数据包这样的常见C工作流程中提供一些额外的安全性。

依赖关系

~1.5MB
~35K SLoC