Frage

Ich suche nach einem Drop-in-Ersatz von Rubys Marshal Fähigkeit, die hoffentlich eine oder mehrere der folgenden Vorteile gegenüber Marshal hat:

  • schnelle Serialisierung / Deserialisierung
  • prägnante (oder einfach kleine) Objekt-Diagramm

Danke !!

War es hilfreich?

Lösung

Msgpack auf all das konzentriert. 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/

Andere Tipps

Leider funktioniert das nicht als ein direkter Ersatz, weil Marshall automatisch komplexe Typen behandelt. Sieht aus wie msgpack zusätzliche Funktionalität benötigt gebaut werden, dass (wie Interna des Marschalls) die Ruby-Strukturen durchlaufen, die das betreffende Objekt zu definieren.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top