minecaft-varint
Minecraft VarInt and VarLong implemetation in Rust, providing minimum memory usage and maximum performance.

Example
Read a VarInt from a Read
use mc_varint::VarIntRead;
use std::io::Cursor;
fn main() {
let mut cur = Cursor::new(vec![0xff, 0xff, 0xff, 0xff, 0x07]);
let value = cur.read_var_i32().unwrap();
assert_eq!(value, 2147483647);
}
Write a VarInt to a Write
use mc_varint::{VarInt, VarIntWrite};
use std::io::Cursor;
fn main() {
let mut cur = Cursor::new(Vec::with_capacity(5));
cur.write_var_i32(2147483647).unwrap();
assert_eq!(cur.into_inner(), vec![0xff, 0xff, 0xff, 0xff, 0x07]);
}