Method: Funl::Message#to_msgpack

Defined in:
lib/funl/message.rb

#to_msgpack(pk = nil) ⇒ Object

Call with Packer, nil, or IO. If pk is nil, returns string. If pk is a Packer, returns the Packer, which will need to be flushed. If pk is IO, returns nil.



86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
# File 'lib/funl/message.rb', line 86

def to_msgpack(pk = nil)
  case pk
  when MessagePack::Packer
    pk.write_array_header(6)
    pk.write @client_id
    pk.write @local_tick
    pk.write @global_tick
    pk.write @delta
    pk.write @tags
    pk.write @blob
    return pk

  else # nil or IO
    MessagePack.pack(self, pk)
  end
end