class Canoser::Cursor

Public Class Methods

new(bytes, offset=0) click to toggle source
# File lib/canoser/cursor.rb, line 3
def initialize(bytes, offset=0)
        @bytes = bytes
        @offset = offset
end

Public Instance Methods

finished?() click to toggle source
# File lib/canoser/cursor.rb, line 20
def finished?
        @offset == @bytes.size
end
peek_bytes(size) click to toggle source
# File lib/canoser/cursor.rb, line 15
def peek_bytes(size)
  raise ParseError.new("#{@offset+size} exceed bytes size:#{@bytes.size}") if @offset+size > @bytes.size
  @bytes[@offset, size]
end
read_bytes(size) click to toggle source
# File lib/canoser/cursor.rb, line 8
def read_bytes(size)
        raise ParseError.new("#{@offset+size} exceed bytes size:#{@bytes.size}") if @offset+size > @bytes.size
        ret = @bytes[@offset, size]
        @offset += size
        ret
end