4 个版本 (破坏性更新)

0.4.0 2021 年 8 月 22 日
0.4.0-beta 2021 年 8 月 17 日
0.3.0 2021 年 8 月 6 日
0.2.0 2021 年 8 月 6 日
0.1.0 2021 年 8 月 6 日

#12 in #le

每月下载量:32
用于 2 crate

Apache-2.0 协议

6KB
76

num-bytes

Crates.io lib.rs.io docs

将原始数据类型转换为字节的特质。

类似于 num 的不良扩展。

用法有点复杂

let a = [8,0];
let b: i16 = from_generic(a);
assert_eq!(b,8);
fn from_generic<T: num_bytes::FromBytes<N>, const N: usize>(x: [u8;N]) -> T {
    T::from_le_bytes(x)
}

并且

let a = 8i16;
let b = into_generic(a);
assert_eq!(b,[8,0]);
fn into_generic<T: num_bytes::IntoBytes<N>, const N: usize>(x: T) -> [u8;N] {
    x.into_le_bytes()
}

lib.rs:

一个允许将泛型从/转换为字节的 crate。

定义了 FromBytesIntoBytes 特质。

在所有数值原始数据类型上实现了它们。

用法有点复杂

let a = [8,0];
let b: i16 = from_generic(a);
assert_eq!(b,8);
fn from_generic<T: num_bytes::FromBytes<N>, const N: usize>(x: [u8;N]) -> T {
    T::from_le_bytes(x)
}
let a = 8i16;
let b = into_generic(a);
assert_eq!(b,[8,0]);
fn into_generic<T: num_bytes::IntoBytes<N>, const N: usize>(x: T) -> [u8;N] {
    x.into_le_bytes()
}

没有运行时依赖