Class: Mfp::Proto::Writer
- Inherits:
-
Object
- Object
- Mfp::Proto::Writer
- Defined in:
- lib/mfp/proto/writer.rb
Instance Method Summary collapse
-
#initialize ⇒ Writer
constructor
A new instance of Writer.
- #length ⇒ Object
- #string ⇒ Object
- #write(value) ⇒ Object
- #write_u16(value) ⇒ Object
- #write_u16_string(value) ⇒ Object
- #write_u32(value) ⇒ Object
- #write_u64(value) ⇒ Object
- #write_u8(value) ⇒ Object
Constructor Details
#initialize ⇒ Writer
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
#length ⇒ Object
25 |
# File 'lib/mfp/proto/writer.rb', line 25 def length = @buf.length |
#string ⇒ Object
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")) |