Module: Protobuf::VarintPure

Included in:
Varint
Defined in:
lib/protobuf/varint_pure.rb

Instance Method Summary collapse

Instance Method Details

#decode(stream) ⇒ Object



3
4
5
6
7
8
9
10
11
# File 'lib/protobuf/varint_pure.rb', line 3

def decode(stream)
  value = index = 0
  begin
    byte = stream.readbyte
    value |= (byte & 0x7f) << (7 * index)
    index += 1
  end while (byte & 0x80).nonzero?
  value
end