6个版本
0.2.1 | 2024年5月23日 |
---|---|
0.2.0 | 2024年2月27日 |
0.1.2 | 2024年5月14日 |
0.1.1 | 2023年7月19日 |
0.0.1 | 2023年4月30日 |
#178 in 编码
292,795 每月下载量
用于 718 个crate (25直接)
64KB
1K SLoC
比特币十六进制库
具有保守的MSRV和依赖策略的通用十六进制编码/解码库。
最小支持的Rust版本 (MSRV)
此库应该能够在Rust 1.56.1上与几乎任何功能的组合编译,但我们保留使用功能来保护编译器特定代码的权利,因此使用MSRV工具链可能无法使用 --all-features
。
Githooks
为了帮助开发者捕捉在运行CI之前出现的错误,我们提供了一些githooks。如果您还没有本地配置githooks,您可以通过在仓库根目录下运行以下命令来使用此仓库中提供的githooks:
git config --local core.hooksPath githooks/
或者,在您的 .git/hooks
目录中添加我们提供的任何githooks的符号链接。
lib.rs
:
十六进制编码和解码。
具有保守的MSRV和依赖策略的通用十六进制编码/解码库。
基本用法
// In your manifest use the `package` key to improve import ergonomics.
// hex = { package = "hex-conservative", version = "*" }
use hex::prelude::*;
// Decode an arbitrary length hex string into a vector.
let v = Vec::from_hex("deadbeef").expect("valid hex digits");
// Or a known length hex string into a fixed size array.
let a = <[u8; 4]>::from_hex("deadbeef").expect("valid length and valid hex digits");
// We support `LowerHex` and `UpperHex` out of the box for `[u8]` slices.
println!("An array as lower hex: {:x}", a.as_hex());
// And for vecs since `Vec` derefs to byte slice.
println!("A vector as upper hex: {:X}", v.as_hex());
// Allocate a new string (also `to_upper_hex_string`).
let s = v.to_lower_hex_string();
// Please note, mixed case strings will still parse successfully but we only
// support displaying hex in a single case.
assert_eq!(
Vec::from_hex("dEaDbEeF").expect("valid mixed case hex digits"),
Vec::from_hex("deadbeef").expect("valid hex digits"),
);
依赖项
~63–305KB