Sha256: b103023fee0bc4f83a2f7b075c4df0a8352a36b10e90b1d0be123b306441c284

Contents?: true

Size: 913 Bytes

Versions: 7

Compression:

Stored size: 913 Bytes

Contents

require 'soap/marshal'

class Node; include SOAP::Marshallable
  attr_reader :first, :second, :str

  def initialize(*init_next)
    @first = init_next[0]
    @second = init_next[1]
  end
end

n9 = Node.new
n81 = Node.new(n9)
n82 = Node.new(n9)
n7 = Node.new(n81, n82)
n61 = Node.new(n7)
n62 = Node.new(n7)
n5 = Node.new(n61, n62)
n41 = Node.new(n5)
n42 = Node.new(n5)
n3 = Node.new(n41, n42)
n21 = Node.new(n3)
n22 = Node.new(n3)
n1 = Node.new(n21, n22)

File.open("digraph_marshalled_string.soap", "wb") do |f|
  SOAP::Marshal.dump(n1, f)
end

marshalledString = File.open("digraph_marshalled_string.soap") { |f| f.read }

puts marshalledString

newnode = SOAP::Marshal.unmarshal(marshalledString)

puts newnode.inspect

p newnode.first.first.__id__
p newnode.second.first.__id__
p newnode.first.first.first.first.__id__
p newnode.second.first.second.first.__id__

File.unlink("digraph_marshalled_string.soap")

Version data entries

7 entries across 7 versions & 2 rubygems

Version Path
soap4r-spox-1.6.0 sample/marshal/digraph.rb
soap4r-ruby1.9-2.0.5 sample/marshal/digraph.rb
soap4r-ruby1.9-2.0.3 sample/marshal/digraph.rb
soap4r-ruby1.9-2.0.2 sample/marshal/digraph.rb
soap4r-ruby1.9-2.0.1 sample/marshal/digraph.rb
soap4r-ruby1.9-2.0.0 sample/marshal/digraph.rb
soap4r-ruby1.9-1.0.0 sample/marshal/digraph.rb