MessagePack implementation for OCaml / msgpack.org[OCaml]
OCaml Coq Makefile
Latest commit 583647e Nov 18, 2016 @mzp mzp committed on GitHub Merge pull request #15 from jpdeplaix/master
Remove the dependency to camlp4 as it is needed only during tests

README.markdown

MsgPack for OCaml

BULID

$ make
$ sudo make install

EXAMPLE

Serialize/Deserialize for Msgpack Object

(* serialize *)
let bytes = 
  Msgpack.Serialize.serialize_string (`FixArray [`PFixnum 1; `PFixnum 2; `PFixnum 3])

(* deserialize *)
let obj =
  Msgpack.Serialize.deserialize_string bytes

Serialize/Deserialize for OCaml types (with meta_conv)

open Msgpack_conv

type t = {
  int : int;
  str : string;
} with conv(msgpack)

(* serialize *)
let bytes = 
  Msgpack.Serialize.serialize_string (msgpack_of_t { int = 42; str = "ans" })

(* deserialize *)
let obj =
  t_of_msgpack (Msgpack.Serialize.deserialize_string bytes)

See also, examlpe/

TEST

$ ocaml setup.ml -configure --enable-tests
$ make test

PROOF

If you want to use msgpack at OCaml, you need not do this section. This section for user intrested in formal verification.

You need Coq 8.4 and omake.

$ cd proof
$ make
$ cp *.ml* ../lib/core