class PackServ::IOPacker
Public Class Methods
new(io, proto)
click to toggle source
# File lib/packserv/io_packer.rb, line 3 def initialize(io, proto) @proto = proto @io = io end
Public Instance Methods
pack(obj)
click to toggle source
# File lib/packserv/io_packer.rb, line 8 def pack(obj) write(MessagePack.pack(obj)) end
Private Instance Methods
frame_length(packed)
click to toggle source
# File lib/packserv/io_packer.rb, line 14 def frame_length(packed) sprintf(@proto::HEADER_FORMAT, packed.bytesize) end
write(packed)
click to toggle source
# File lib/packserv/io_packer.rb, line 18 def write(packed) @io.write(frame_length(packed) + packed) end