3个不稳定版本
0.2.0 | 2023年11月13日 |
---|---|
0.1.1 | 2023年11月13日 |
0.1.0 | 2023年11月13日 |
#383 in 无标准库
36 每月下载量
10KB
62 代码行
一个允许您将结构体表示为数组的Rust库。
库仅与具有相同类型字段的命名结构体一起工作。
示例
基本使用
use struct_as_array::*;
#[derive(AsArray)]
struct TestStruct {
t1: i32,
t2: i32,
t3: i32,
}
let t = TestStruct {
t1: 0,
t2: 1,
t3: 2,
};
// Represent as array of reference
assert_eq!(t.as_array(), [&0, &1, &2]);
// Convert struct to array
assert_eq!(t.to_array(), [0, 1, 2]);
作为迭代器的使用
use struct_as_array::*;
#[derive(AsArray)]
struct TestStruct {
t1: i32,
t2: i32,
t3: i32,
}
let t = TestStruct {
t1: 0,
t2: 1,
t3: 2,
};
for i in t.as_array() {
println!("{}", i);
}
依赖
~1.5MB
~41K SLoC