Dirkjan Bussink 4a0d7f18fd Explicitly state msgpack doesn't modify char* buffers from RSTRING_PTR
From what I could investigate, msgpack doesn't modify char* buffers
obtained from RSTRING_PTR. This means that on Rubinius we don't have to
copy back and forth the buffer to make sure it's also updated on the
Ruby side.

This copying of buffers is a similar problem as the RARRAY_PTR problem,
because it is not safe to expose GC'ed memory on Rubinius to extensions
since it can move due to Rubinius having a moving GC.
2012-03-17 12:40:29 +01:00
..
2010-11-24 17:24:55 +09:00
2010-04-22 14:56:25 +09:00
2009-02-15 09:09:56 +00:00
2011-08-08 23:50:25 +09:00
2011-08-08 23:49:19 +09:00
2010-11-24 17:24:55 +09:00
2010-05-26 07:43:05 +09:00
2010-05-26 07:43:05 +09:00
2010-05-26 07:43:05 +09:00
2011-08-08 23:50:25 +09:00

= MessagePack

== Description

MessagePack is a binary-based efficient object serialization library.
It enables to exchange structured objects between many languages like JSON.
But unlike JSON, it is very fast and small.

Simple usage is as follows:

  require 'msgpack'
  msg = [1,2,3].to_msgpack  #=> "\x93\x01\x02\x03"
  MessagePack.unpack(msg)   #=> [1,2,3]

Use MessagePack::Unpacker for streaming deserialization.


== Installation

=== Archive Installation

  ruby extconf.rb
  make
  make install

=== Gem Installation

  gem install msgpack


== Copyright

Author::    frsyuki <frsyuki@users.sourceforge.jp>
Copyright:: Copyright (c) 2008-2010 FURUHASHI Sadayuki
License::   Apache License, Version 2.0