6个版本
0.3.0 | 2023年10月17日 |
---|---|
0.2.0 | 2023年9月22日 |
0.2.0-rc2 | 2023年9月8日 |
0.2.0-rc1 | 2023年9月5日 |
0.1.0 | 2020年6月14日 |
#939 in 数据结构
20KB
514 行
vartyint
Rust库,用于读取varint
查看文档
lib.rs
:
读写varint到/从字节
写入字节
use vartyint;
let mut my_bytes = Vec::new();
vartyint::write_i32(1000, &mut my_bytes);
assert_eq!(my_bytes, &[0xd0, 0x0f]);
读取
从一个字节数组切片中读取一个整数(&[u8]
)。成功时,返回数字以及剩余的字节。您可以这样“弹出”数字。
use vartyint;
let my_bytes = vec![0x18, 0x01, 0xBF, 0xBB, 0x01];
let (num1, my_bytes) = vartyint::read_i32(&my_bytes).unwrap();
assert_eq!(num1, 12);
assert_eq!(my_bytes, &[0x01, 0xBF, 0xBB, 0x01]);
let (num2, my_bytes) = vartyint::read_i32(&my_bytes).unwrap();
assert_eq!(num2, -1);
assert_eq!(my_bytes, &[0xBF, 0xBB, 0x01]);
let (num3, my_bytes) = vartyint::read_i32(&my_bytes).unwrap();
assert_eq!(num3, -12_000);
assert_eq!(my_bytes, &[]);
// Can't read any more
assert_eq!(vartyint::read_i32(&my_bytes), Err(vartyint::VartyIntError::EmptyBuffer));