3 个版本
0.1.2 | 2022 年 3 月 31 日 |
---|---|
0.1.1 | 2022 年 3 月 31 日 |
0.1.0 | 2022 年 3 月 31 日 |
1386 在 Rust 模式
8KB
138 行
sha2-derive
此包提供了一种简单的 Hashable
特性,可以轻松地进行派生。目前,派生宏仅适用于结构体。
示例
use sha2_derive::*;
#[derive(Hashable)]
struct User {
username: String,
age: u8,
timestamps: Vec<u64>,
}
fn main() {
let user = User {
username: String::from("Mubelotix"),
age: 42,
timestamps: vec![1, 2, 3],
};
let hash = user.hash();
}
在自定义类型上实现 Hashable
struct CustomType {
// fields
}
impl Hashable for CustomType {
fn update_hasher(&self, hasher: &mut impl sha2::Digest) {
todo!()
}
}
许可证:MIT
lib.rs
:
此包提供了一种简单的 Hashable
特性,可以轻松地进行派生。
目前,派生宏仅适用于结构体。
示例
use sha2_derive::*;
#[derive(Hashable)]
struct User {
username: String,
age: u8,
timestamps: Vec<u64>,
}
fn main() {
let user = User {
username: String::from("Mubelotix"),
age: 42,
timestamps: vec![1, 2, 3],
};
let hash = user.hash();
}
在自定义类型上实现 Hashable
struct CustomType {
// fields
}
impl Hashable for CustomType {
fn update_hasher(&self, hasher: &mut impl sha2::Digest) {
todo!()
}
}
依赖项
~435KB
~10K SLoC