Method: CMF::Varint.deserialize
- Defined in:
- lib/cmf/varint.rb
.deserialize(io) ⇒ Integer
Deserializes a varint into a integer.
35 36 37 38 39 40 41 42 43 |
# File 'lib/cmf/varint.rb', line 35 def self.deserialize(io) result = 0 io.each_byte do |byte| result = (result << 7) | (byte & 0x7F) return result if (byte & 0x80) == 0 result += 1 end raise CMF::MalformedMessageError, "Unexpected end of stream" end |