Class: Mfp::Proto::Writer

Inherits:
Object
  • Object
show all
Defined in:
lib/mfp/proto/writer.rb

Instance Method Summary collapse

Constructor Details

#initializeWriter

Returns a new instance of Writer.



6
7
8
# File 'lib/mfp/proto/writer.rb', line 6

def initialize
  @buf = StringIO.new
end

Instance Method Details

#lengthObject



25
# File 'lib/mfp/proto/writer.rb', line 25

def length = @buf.length

#stringObject



24
# File 'lib/mfp/proto/writer.rb', line 24

def string = @buf.string

#write(value) ⇒ Object



10
# File 'lib/mfp/proto/writer.rb', line 10

def write(value) = @buf.write(value)

#write_u16(value) ⇒ Object



12
# File 'lib/mfp/proto/writer.rb', line 12

def write_u16(value) = write([value].pack("S>"))

#write_u16_string(value) ⇒ Object



16
17
18
19
20
21
22
# File 'lib/mfp/proto/writer.rb', line 16

def write_u16_string(value)
  l = value&.bytesize || 0
  write_u16(l)
  return if l.zero?

  write(value.encode("utf-8"))
end

#write_u32(value) ⇒ Object



13
# File 'lib/mfp/proto/writer.rb', line 13

def write_u32(value) = write([value].pack("L>"))

#write_u64(value) ⇒ Object



14
# File 'lib/mfp/proto/writer.rb', line 14

def write_u64(value) = write([value].pack("Q>"))

#write_u8(value) ⇒ Object



11
# File 'lib/mfp/proto/writer.rb', line 11

def write_u8(value) = write([value].pack("C"))