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)


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

def abstract?
  Lib.g_object_info_get_abstract @gobj
end

#class_structObject



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

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

#constant(index) ⇒ Object



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

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

#field(index) ⇒ Object



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

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

#find_method(name) ⇒ Object



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

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

#find_property(name) ⇒ Object



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

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

#find_vfunc(name) ⇒ Object



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

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

#fundamental?Boolean

Returns:

  • (Boolean)


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

def fundamental?
  Lib.g_object_info_get_fundamental @gobj
end

#get_method(index) ⇒ Object



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

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

#get_n_methodsObject



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

def get_n_methods
  Lib.g_object_info_get_n_methods @gobj
end

#interface(index) ⇒ Object



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

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

#n_constantsObject



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

def n_constants
  Lib.g_object_info_get_n_constants @gobj
end

#n_fieldsObject



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

def n_fields
  Lib.g_object_info_get_n_fields @gobj
end

#n_interfacesObject



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

def n_interfaces
  Lib.g_object_info_get_n_interfaces @gobj
end

#n_propertiesObject



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

def n_properties
  Lib.g_object_info_get_n_properties @gobj
end

#n_signalsObject



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

def n_signals
  Lib.g_object_info_get_n_signals @gobj
end

#n_vfuncsObject



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

def n_vfuncs
  Lib.g_object_info_get_n_vfuncs @gobj
end

#parentObject



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

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

#propertiesObject



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

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

#property(index) ⇒ Object



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

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

#signal(index) ⇒ Object



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

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

#type_initObject



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

def type_init
  Lib.g_object_info_get_type_init @gobj
end

#type_nameObject



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

def type_name
  Lib.g_object_info_get_type_name @gobj
end

#vfunc(index) ⇒ Object



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

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