mirror of
https://github.com/msgpack/msgpack-c.git
synced 2025-03-18 20:38:00 +01:00

Using internals of MRI by using RARRAY_PTR makes it necessary for other implementations such as Rubinius to continuously copy the structure returned by RARRAY_PTR back and forth since in Rubinius objects are layed out differently internally. Extensions should not depend and use these internal MRI structures if this is not necessary and when there are API methods that can provide the same functionality. This makes sure other implementations can also use the extension without any big problems. For this reason I also removed the FIXME comment, since that change would also heavily depend on the internal memory layout of objects on MRI.
= 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