class Spoon::PointerArray

Public Class Methods

new() click to toggle source
# File lib/spoon/unix.rb, line 110
def initialize
  @ary = []
end

Public Instance Methods

<<(ptr) click to toggle source
# File lib/spoon/unix.rb, line 114
def <<(ptr)
  @ary << ptr
  self
end
pointer() click to toggle source
# File lib/spoon/unix.rb, line 119
def pointer
  if @pointer.nil? || (@pointer.size / @pointer.type_size) <= @ary.length
    ptr = FFI::MemoryPointer.new(:pointer, @ary.length + 1)
    ptr.put_array_of_pointer(0, @ary)
    @pointer = ptr
  end
  @pointer
end