#rkyv #serialization #zero-copy #archive #no-std

no-std rkyv_typename

自定义类型命名

23 个版本

0.7.44 2024年2月4日
0.7.43 2023年12月17日
0.7.42 2023年5月13日
0.7.41 2023年3月31日
0.2.0 2020年11月19日

#1850编码

Download history 719/week @ 2024-03-25 409/week @ 2024-04-01 773/week @ 2024-04-08 466/week @ 2024-04-15 569/week @ 2024-04-22 615/week @ 2024-04-29 431/week @ 2024-05-06 278/week @ 2024-05-13 602/week @ 2024-05-20 237/week @ 2024-05-27 226/week @ 2024-06-03 377/week @ 2024-06-10 411/week @ 2024-06-17 774/week @ 2024-06-24 705/week @ 2024-07-01 1044/week @ 2024-07-08

每月 2,956 次下载
22 软件包中使用 (直接使用 2 个)

MIT 许可证

12KB
201

rkyv_typename 为 rkyv_dyn 添加类型名称。

资源

学习材料

  • rkyv 书籍 讲解了 rkyv 的动机、架构和主要功能
  • rkyv Discord 是一个很好的地方,可以寻求特定问题的帮助并结识其他使用 rkyv 的人

文档

基准测试

  • rust 序列化基准测试 是一种对决式基准测试,比较了许多 Rust 序列化解决方案。它包括针对像 rkyv 这样的零拷贝序列化解决方案的特殊基准测试。

相关软件包

示例

use rkyv_typename::TypeName;

#[derive(TypeName)]
#[typename = "CoolType"]
struct Example<T>(T);

fn main() {
    let mut type_name = String::new();
    Example::<i32>::build_type_name(|piece| type_name += piece);
    assert_eq!(type_name, "CoolType<i32>");
}

依赖关系

~1.5MB
~35K SLoC