module GLib::ListMethods

Attributes

element_type[RW]

Public Class Methods

included(base) click to toggle source
# File lib/ffi-glib/list_methods.rb, line 8
def self.included base
  base.extend ContainerClassMethods
  # Override default field accessors.
  replace_method base, :next, :tail
  replace_method base, :data, :head
end
replace_method(base, old, new) click to toggle source
# File lib/ffi-glib/list_methods.rb, line 15
def self.replace_method base, old, new
  base.class_eval do
    remove_method old
    alias_method old, new
  end
end

Public Instance Methods

each() { |elem| ... } click to toggle source
# File lib/ffi-glib/list_methods.rb, line 22
def each
  reset_iterator
  while (elem = next_element)
    yield elem
  end
end
head() click to toggle source
# File lib/ffi-glib/list_methods.rb, line 33
def head
  GirFFI::ArgHelper.cast_from_pointer(element_type, @struct[:data])
end
reset_typespec(typespec) click to toggle source
# File lib/ffi-glib/list_methods.rb, line 37
def reset_typespec typespec
  self.element_type = typespec
  self
end
tail() click to toggle source
# File lib/ffi-glib/list_methods.rb, line 29
def tail
  self.class.wrap(element_type, @struct[:next])
end