Method: BERT::Decode#read

Defined in:
lib/bert/decode.rb

#read(length) ⇒ Object



45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# File 'lib/bert/decode.rb', line 45

def read(length)
  if length < @peeked.length
    result = @peeked[0...length]
    @peeked = @peeked[length..-1]
    length = 0
  else
    result = @peeked
    @peeked = ''
    length -= result.length
  end

  if length > 0
    result << @in.read(length)
  end
  result
end