Sha256: c209d1b26699e1be4d1247b69d6dd38e09007c90739dc478dc679f9c65df176a

Contents?: true

Size: 456 Bytes

Versions: 9

Compression:

Stored size: 456 Bytes

Contents

# frozen_string_literal: true

require 'ffi-glib/list_methods'

GLib.load_class :List

module GLib
  # Overrides for GList, GLib's doubly linked list implementation.
  class List
    include ListMethods

    def self.from_enumerable(type, arr)
      arr.reduce(new(type)) { |lst, val| lst.append val }
    end

    def append(data)
      self.class.wrap(element_type,
                      Lib.g_list_append(self, element_ptr_for(data)))
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
gir_ffi-0.14.1 lib/ffi-glib/list.rb
gir_ffi-0.14.0 lib/ffi-glib/list.rb
gir_ffi-0.13.1 lib/ffi-glib/list.rb
gir_ffi-0.13.0 lib/ffi-glib/list.rb
gir_ffi-0.12.1 lib/ffi-glib/list.rb
gir_ffi-0.12.0 lib/ffi-glib/list.rb
gir_ffi-0.11.4 lib/ffi-glib/list.rb
gir_ffi-0.11.3 lib/ffi-glib/list.rb
gir_ffi-0.11.2 lib/ffi-glib/list.rb