Wraps GIBaseInfo struct, the base type for all info types. Decendant types will be implemented as needed.
This is a helper method to construct a method returning an array, out of the methods returning their number and the individual elements.
For example, given the methods n_foos and
foo(i), this method will create an additional
method foos returning all args.
Provide the second parameter if the plural is not trivially constructed by
adding s to the singular.
# File lib/ffi-gobject_introspection/i_base_info.rb, line 21 def self.build_array_method method, single = nil method = method.to_s single ||= method[0..-2] count = method.sub(%r^(get_)?/, "\\1n_") self.class_eval " def #{method} (0..(#{count} - 1)).map do |i| #{single} i end end " end
# File lib/ffi-gobject_introspection/i_base_info.rb, line 72 def self.wrap ptr return nil if ptr.null? return new ptr end
# File lib/ffi-gobject_introspection/i_base_info.rb, line 77 def == other Lib.g_base_info_equal @gobj, other.to_ptr end
# File lib/ffi-gobject_introspection/i_base_info.rb, line 63 def container ptr = Lib.g_base_info_get_container @gobj IRepository.wrap_ibaseinfo_pointer ptr end
# File lib/ffi-gobject_introspection/i_base_info.rb, line 68 def deprecated? Lib.g_base_info_is_deprecated @gobj end
# File lib/ffi-gobject_introspection/i_base_info.rb, line 51 def info_type Lib.g_base_info_get_type @gobj end
# File lib/ffi-gobject_introspection/i_base_info.rb, line 36 def name Lib.g_base_info_get_name @gobj end
# File lib/ffi-gobject_introspection/i_base_info.rb, line 55 def namespace Lib.g_base_info_get_namespace @gobj end
# File lib/ffi-gobject_introspection/i_base_info.rb, line 40 def safe_name name.gsub(%r^./) do |char| case char when "_" "Private___" else char.upcase end end end
# File lib/ffi-gobject_introspection/i_base_info.rb, line 59 def safe_namespace namespace.gsub(%r^(.)/) { $1.upcase } end
# File lib/ffi-gobject_introspection/i_base_info.rb, line 9 def to_ptr @gobj end