class Hammer::Internal::HCountedArray

Public Instance Methods

each(&code) click to toggle source
# File lib/hammer/internal.rb, line 159
def each(&code)
  elements.each {|x| code.call x}
end
elements() click to toggle source
# File lib/hammer/internal.rb, line 145
def elements
  elem_array = FFI::Pointer.new(:pointer, self[:elements])
  return (0...self[:used]).map { |i| HParsedToken.new(elem_array[i].read_pointer) }
end
length() click to toggle source
# File lib/hammer/internal.rb, line 141
def length
  self[:used]
end
map(&code) click to toggle source

def [](idx)

raise ArgumentError, "Index out of range" unless idx >= 0 and idx < length
elem_array = FFI::Pointer.new(:pointer, self[:elements])
return HParsedToken.new(elem_array[i].read_pointer)

end

# File lib/hammer/internal.rb, line 156
def map(&code)
  elements.map {|x| code.call x}
end