2010-06-22 8 views

Antwort

3

Msgpack konzentriert sich auf all das. So ersetzen Marshal:

require 'msgpack' 

module Marshal 
    module_function 
    def dump(x) 
    x.to_msgpack 
    end 
    def load(x) 
    MessagePack.unpack x 
    end 
    alias restore load 
end 

http://msgpack.sourceforge.net/

+0

danke! wirklich hilfreich –

2

Leider, die nicht als ein direkter Ersatz funktioniert, weil Marshall automatisch komplexe Typen behandeln. Es sieht so aus, als ob msgpack zusätzliche Funktionalität benötigt, die (wie Marshals Interna) die Ruby-Strukturen, die das fragliche Objekt definieren, iterieren wird.

+2

Ja, msgpack wandelt auch nur Symbole in Zeichenfolgen. Diese Frage verlangte meistens nach einer schnellen Bibliothek. – Adrian