3个版本
0.1.2 | 2022年6月29日 |
---|---|
0.1.1 | 2022年6月28日 |
0.1.0 | 2022年6月28日 |
2259 在 解析器实现
23 每月下载量
在 midwest_mainline 中使用
12KB
148 行
juicy_bencode
使用Nom库编写的bencode小解析器。 Nom逐字节读取输入,而bencode正是如此多汁的输入!
该软件包提供更多单独的解析功能,用于解析单个bencode项或只是一个blob。
TL; DR
您有一个包含完全合法文件种子信息的bencoded blob,
// pub enum BencodeItemView<'a> {
// Integer(i64),
// ByteString(&'a [u8]),
// List(Vec<BencodeItemView<'a>>),
// Dictionary(BTreeMap<&'a [u8], BencodeItemView<'a>>),
// }
use juicy_bencode::parse_bencode_dict;
fn main () -> Result<(), Box<dyn Error>>{
// the library uses byte slices
let text: &[u8] = input();
// now you can do totally legal things with the info!
let parsed_tree: BencodeItemView = parse_bencode_dict(text)?;
}
依赖关系
~1.3–2MB
~39K SLoC