13 个版本
0.5.5 | 2022年7月10日 |
---|---|
0.5.3 | 2021年10月5日 |
0.5.1 | 2021年7月10日 |
0.5.0 | 2021年3月25日 |
0.3.2 | 2020年11月30日 |
在 值格式化 中排名 #59
每月下载量 3,051
在 13 crates 中使用
10KB
225 行
hexlit
编译时将十六进制字符串转换为字节数组的零分配、无标准库兼容的零成本方法。
添加到您的 Cargo.toml 文件中
hexlit = "0.5.5"
示例
use hexlit::hex;
fn main() {
const DATA: [u8; 4] = hex!("01020304");
assert_eq!(DATA, [1, 2, 3, 4]);
assert_eq!(hex!("0xDEADBEEF"), [0xDE, 0xAD, 0xBE, 0xEF]);
assert_eq!(hex!("a1b2c3d4"), [0xA1, 0xB2, 0xC3, 0xD4]);
assert_eq!(hex!("E5 E6 90 92"), [0xE5, 0xE6, 0x90, 0x92]);
assert_eq!(hex!("0a0B0C0d"), [10, 11, 12, 13]);
assert_eq!(hex!(1a 0_b 0C 0d), [0x1a, 11, 12, 13]);
assert_eq!(hex!(0F 03|0B|0C|0d), [15, 3, 11, 12, 13]);
assert_eq!(hex!(0A-0B-0C-0d), [10, 11, 12, 13]);
assert_eq!(
hex!(
A1 B2
C3
D4
),
[0xA1, 0xB2, 0xC3, 0xD4]
);
}