#ordinal #map #enums #integer #set #traits-structs

ordinal-map-derive

将值映射到整数的序数特质以及高效映射和集合类型

7个版本

0.1.6 2024年6月24日
0.1.5 2024年6月24日

#16 in #ordinal

每月下载量:22
ordinal-map 中使用

MIT 协议

19KB
448

Ordinal 类型集合

该库提供了 Ordinal 特质以将类型映射到 usize 值,通过proc-macro派生结构体和枚举的 Ordinal 特质,并提供了使用这些类型作为键的 mapset 实现以实现高效。

示例

use ordinal_map::map::total::OrdinalTotalMap;
#[derive(ordinal_map::Ordinal)]
enum ErrorCategory {
    Network,
    Disk,
    Logic,
}

fn classify_error(error: &str) -> ErrorCategory {
    // ...
}

let mut error_counts: OrdinalTotalMap<ErrorCategory, u64> = OrdinalTotalMap::default();

for error in &errors {
    let category = classify_error(error);
    error_counts[category] += 1;
}

lib.rs:

ordinal-map 飞船的进程宏。

该飞船没有公共API,所有内容都是从 ordinal-map 飞船中重新导出的。

依赖项

~245–690KB
~16K SLoC