#messagepack #serialization #language

nightly msgpack

MessagePack serialization implementation for Rust

1 unstable release

Uses old Rust 2015

0.1.0 Dec 22, 2014

#26 in #message-pack

MIT/Apache

35KB
849 lines

rust-msgpack Build Status

Msgpack implementation for Rust language.

Installation

Simply include the rust-msgpack in your Cargo dependencies.

[dependencies.msgpack]

git = "git@github.com:mneumann/rust-msgpack.git"

Quickstart

extern crate msgpack;

fn main() {
  let arr = vec!["str1".to_string(), "str2".to_string()];
  let str = msgpack::Encoder::to_msgpack(&arr).ok().unwrap();
  println!("Encoded: {}", str);

  let dec: Vec<String> = msgpack::from_msgpack(str).ok().unwrap();
  println!("Decoded: {}", dec);
}

To enable your own data structures to be automatically serialized from and to msgpack, derive from Encodable and Decodable as shown in the following example:

extern crate serialize;

#[deriving(Encodable,Decodable)]
struct MyStruct {
  a: Vec<u32>,
  s: String
}

Testing

cargo test

License

This code licensed under the same terms as Rust itself: dual MIT/Apache2 license options.

No runtime deps