Class: GObjectIntrospection::IObjectInfo

Inherits:
IRegisteredTypeInfo show all
Defined in:
lib/ffi-gobject_introspection/i_object_info.rb

Overview

Wraps a GIObjectInfo struct. Represents an object.

Instance Method Summary collapse

Methods inherited from IRegisteredTypeInfo

#g_type

Methods inherited from IBaseInfo

#==, #attribute, build_array_method, build_finder_method, #container, #deprecated?, #info_type, #initialize, make_finalizer, #name, #namespace, #safe_namespace, #to_ptr, wrap

Constructor Details

This class inherits a constructor from GObjectIntrospection::IBaseInfo

Instance Method Details

#abstract?Boolean

Returns:

  • (Boolean)


13
14
15
# File 'lib/ffi-gobject_introspection/i_object_info.rb', line 13

def abstract?
  Lib.g_object_info_get_abstract @gobj
end

#class_structObject



115
116
117
# File 'lib/ffi-gobject_introspection/i_object_info.rb', line 115

def class_struct
  IStructInfo.wrap Lib.g_object_info_get_class_struct(@gobj)
end

#constant(index) ⇒ Object



109
110
111
# File 'lib/ffi-gobject_introspection/i_object_info.rb', line 109

def constant(index)
  IConstantInfo.wrap Lib.g_object_info_get_constant(@gobj, index)
end

#field(index) ⇒ Object



40
41
42
# File 'lib/ffi-gobject_introspection/i_object_info.rb', line 40

def field(index)
  IFieldInfo.wrap Lib.g_object_info_get_field(@gobj, index)
end

#find_method(name) ⇒ Object



75
76
77
# File 'lib/ffi-gobject_introspection/i_object_info.rb', line 75

def find_method(name)
  IFunctionInfo.wrap Lib.g_object_info_find_method(@gobj, name.to_s)
end

#find_property(name) ⇒ Object



59
60
61
62
# File 'lib/ffi-gobject_introspection/i_object_info.rb', line 59

def find_property(name)
  name = name.to_s.tr('_', '-')
  properties.find { |prop| prop.name == name }
end

#find_vfunc(name) ⇒ Object



99
100
101
# File 'lib/ffi-gobject_introspection/i_object_info.rb', line 99

def find_vfunc(name)
  IVFuncInfo.wrap Lib.g_object_info_find_vfunc(@gobj, name.to_s)
end

#fundamental?Boolean

Returns:

  • (Boolean)


17
18
19
# File 'lib/ffi-gobject_introspection/i_object_info.rb', line 17

def fundamental?
  Lib.g_object_info_get_fundamental @gobj
end

#get_method(index) ⇒ Object



68
69
70
# File 'lib/ffi-gobject_introspection/i_object_info.rb', line 68

def get_method(index)
  IFunctionInfo.wrap Lib.g_object_info_get_method(@gobj, index)
end

#get_n_methodsObject



64
65
66
# File 'lib/ffi-gobject_introspection/i_object_info.rb', line 64

def get_n_methods
  Lib.g_object_info_get_n_methods @gobj
end

#interface(index) ⇒ Object



29
30
31
# File 'lib/ffi-gobject_introspection/i_object_info.rb', line 29

def interface(index)
  IInterfaceInfo.wrap Lib.g_object_info_get_interface(@gobj, index)
end

#n_constantsObject



105
106
107
# File 'lib/ffi-gobject_introspection/i_object_info.rb', line 105

def n_constants
  Lib.g_object_info_get_n_constants @gobj
end

#n_fieldsObject



36
37
38
# File 'lib/ffi-gobject_introspection/i_object_info.rb', line 36

def n_fields
  Lib.g_object_info_get_n_fields @gobj
end

#n_interfacesObject



25
26
27
# File 'lib/ffi-gobject_introspection/i_object_info.rb', line 25

def n_interfaces
  Lib.g_object_info_get_n_interfaces @gobj
end

#n_propertiesObject



47
48
49
# File 'lib/ffi-gobject_introspection/i_object_info.rb', line 47

def n_properties
  Lib.g_object_info_get_n_properties @gobj
end

#n_signalsObject



79
80
81
# File 'lib/ffi-gobject_introspection/i_object_info.rb', line 79

def n_signals
  Lib.g_object_info_get_n_signals @gobj
end

#n_vfuncsObject



91
92
93
# File 'lib/ffi-gobject_introspection/i_object_info.rb', line 91

def n_vfuncs
  Lib.g_object_info_get_n_vfuncs @gobj
end

#parentObject



21
22
23
# File 'lib/ffi-gobject_introspection/i_object_info.rb', line 21

def parent
  IObjectInfo.wrap Lib.g_object_info_get_parent(@gobj)
end

#propertiesObject



55
56
57
# File 'lib/ffi-gobject_introspection/i_object_info.rb', line 55

def properties
  @properties ||= Array.new(n_properties) { |idx| property(idx) }
end

#property(index) ⇒ Object



51
52
53
# File 'lib/ffi-gobject_introspection/i_object_info.rb', line 51

def property(index)
  IPropertyInfo.wrap Lib.g_object_info_get_property(@gobj, index)
end

#signal(index) ⇒ Object



83
84
85
# File 'lib/ffi-gobject_introspection/i_object_info.rb', line 83

def signal(index)
  ISignalInfo.wrap Lib.g_object_info_get_signal(@gobj, index)
end

#type_initObject



9
10
11
# File 'lib/ffi-gobject_introspection/i_object_info.rb', line 9

def type_init
  Lib.g_object_info_get_type_init @gobj
end

#type_nameObject



5
6
7
# File 'lib/ffi-gobject_introspection/i_object_info.rb', line 5

def type_name
  Lib.g_object_info_get_type_name @gobj
end

#vfunc(index) ⇒ Object



95
96
97
# File 'lib/ffi-gobject_introspection/i_object_info.rb', line 95

def vfunc(index)
  IVFuncInfo.wrap Lib.g_object_info_get_vfunc(@gobj, index)
end