Method: BinData::IO::Common::SeekableStream#num_bytes_remaining

Defined in:
lib/bindata/io.rb

#num_bytes_remainingObject

The number of bytes remaining in the input stream.



71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
# File 'lib/bindata/io.rb', line 71

def num_bytes_remaining
  start_mark = @raw_io.pos
  @raw_io.seek(0, ::IO::SEEK_END)
  end_mark = @raw_io.pos

  if @buffer_end_points
    if @buffer_end_points[1] < end_mark
      end_mark = @buffer_end_points[1]
    end
  end

  bytes_remaining = end_mark - start_mark
  @raw_io.seek(start_mark, ::IO::SEEK_SET)

  bytes_remaining
end