Library for parsing and converting bencoded data.
Examples
Decoding bencoded data:
extern crate bip_bencode;
use Default;
use ;
Encoding bencoded data:
extern crate bip_bencode;
Library for parsing and converting bencoded data.
Decoding bencoded data:
extern crate bip_bencode;
use std::default::Default;
use bip_bencode::{BencodeRef, BRefAccess, BDecodeOpt};
fn main() {
let data = b"d12:lucky_numberi7ee";
let bencode = BencodeRef::decode(data, BDecodeOpt::default()).unwrap();
assert_eq!(7, bencode.dict().unwrap().lookup("lucky_number".as_bytes())
.unwrap().int().unwrap());
}
Encoding bencoded data:
#[macro_use]
extern crate bip_bencode;
fn main() {
let message = (ben_map!{
"lucky_number" => ben_int!(7),
"lucky_string" => ben_bytes!("7")
}).encode();
assert_eq!(&b"d12:lucky_numberi7e12:lucky_string1:7e"[..], &message[..]);
}