gir_ffi 0.15.1 → 0.15.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Changelog.md +42 -0
- data/README.md +10 -10
- data/TODO.md +14 -35
- data/docs/Documentation.md +6 -0
- data/docs/Subclassing.md +38 -0
- data/lib/ffi-glib.rb +8 -3
- data/lib/ffi-glib/byte_array.rb +2 -1
- data/lib/ffi-glib/container_class_methods.rb +1 -3
- data/lib/ffi-glib/destroy_notify.rb +2 -2
- data/lib/ffi-glib/hash_table.rb +1 -2
- data/lib/ffi-glib/list.rb +11 -5
- data/lib/ffi-glib/list_methods.rb +12 -0
- data/lib/ffi-glib/s_list.rb +10 -4
- data/lib/ffi-gobject.rb +2 -5
- data/lib/ffi-gobject/object.rb +102 -92
- data/lib/ffi-gobject/object_class.rb +1 -1
- data/lib/ffi-gobject/ruby_closure.rb +1 -1
- data/lib/ffi-gobject/value.rb +108 -117
- data/lib/ffi-gobject_introspection/i_base_info.rb +35 -27
- data/lib/ffi-gobject_introspection/lib.rb +1 -1
- data/lib/gir_ffi-base/gobject/lib.rb +4 -0
- data/lib/gir_ffi/array_element_convertor.rb +2 -3
- data/lib/gir_ffi/boxed_base.rb +13 -11
- data/lib/gir_ffi/builder.rb +3 -4
- data/lib/gir_ffi/builder_helper.rb +10 -2
- data/lib/gir_ffi/builders/base_argument_builder.rb +2 -2
- data/lib/gir_ffi/builders/base_method_builder.rb +1 -1
- data/lib/gir_ffi/builders/base_type_builder.rb +1 -1
- data/lib/gir_ffi/builders/callback_argument_builder.rb +2 -0
- data/lib/gir_ffi/builders/callback_builder.rb +25 -11
- data/lib/gir_ffi/builders/callback_return_value_builder.rb +4 -6
- data/lib/gir_ffi/builders/enum_builder.rb +9 -5
- data/lib/gir_ffi/builders/field_builder.rb +2 -1
- data/lib/gir_ffi/builders/function_builder.rb +1 -1
- data/lib/gir_ffi/builders/interface_builder.rb +3 -1
- data/lib/gir_ffi/builders/mapping_method_builder.rb +1 -1
- data/lib/gir_ffi/builders/marshalling_method_builder.rb +5 -2
- data/lib/gir_ffi/builders/method_template.rb +4 -4
- data/lib/gir_ffi/builders/module_builder.rb +4 -2
- data/lib/gir_ffi/builders/null_argument_builder.rb +0 -2
- data/lib/gir_ffi/builders/null_return_value_builder.rb +0 -2
- data/lib/gir_ffi/builders/object_builder.rb +18 -6
- data/lib/gir_ffi/builders/property_builder.rb +1 -2
- data/lib/gir_ffi/builders/signal_closure_builder.rb +3 -5
- data/lib/gir_ffi/builders/struct_builder.rb +34 -7
- data/lib/gir_ffi/builders/user_defined_builder.rb +8 -1
- data/lib/gir_ffi/builders/vfunc_argument_builder.rb +1 -1
- data/lib/gir_ffi/callback_base.rb +7 -8
- data/lib/gir_ffi/class_base.rb +1 -0
- data/lib/gir_ffi/core.rb +17 -2
- data/lib/gir_ffi/glib_error.rb +1 -2
- data/lib/gir_ffi/in_pointer.rb +7 -0
- data/lib/gir_ffi/object_base.rb +27 -0
- data/lib/gir_ffi/return_value_info.rb +1 -2
- data/lib/gir_ffi/struct_base.rb +1 -9
- data/lib/gir_ffi/struct_like_base.rb +9 -5
- data/lib/gir_ffi/type_map.rb +1 -0
- data/lib/gir_ffi/unintrospectable_type_info.rb +1 -1
- data/lib/gir_ffi/union_base.rb +1 -9
- data/lib/gir_ffi/user_defined_object_info.rb +3 -2
- data/lib/gir_ffi/version.rb +1 -1
- data/lib/gir_ffi/vfunc_implementation.rb +1 -0
- metadata +106 -143
- data/Gemfile +0 -14
- data/Rakefile +0 -9
- data/tasks/test.rake +0 -204
- data/test/base_test_helper.rb +0 -70
- data/test/ffi-glib/array_test.rb +0 -203
- data/test/ffi-glib/byte_array_test.rb +0 -28
- data/test/ffi-glib/bytes_test.rb +0 -61
- data/test/ffi-glib/closure_test.rb +0 -38
- data/test/ffi-glib/destroy_notify_test.rb +0 -18
- data/test/ffi-glib/hash_table_test.rb +0 -68
- data/test/ffi-glib/list_test.rb +0 -86
- data/test/ffi-glib/main_loop_test.rb +0 -53
- data/test/ffi-glib/ptr_array_test.rb +0 -112
- data/test/ffi-glib/ruby_closure_test.rb +0 -62
- data/test/ffi-glib/s_list_test.rb +0 -76
- data/test/ffi-glib/strv_test.rb +0 -60
- data/test/ffi-glib/variant_test.rb +0 -12
- data/test/ffi-gobject/gobject_test.rb +0 -76
- data/test/ffi-gobject/object_class_test.rb +0 -31
- data/test/ffi-gobject/object_test.rb +0 -122
- data/test/ffi-gobject/param_spec_test.rb +0 -32
- data/test/ffi-gobject/value_test.rb +0 -390
- data/test/ffi-gobject_introspection/gobject_type_init_test.rb +0 -26
- data/test/ffi-gobject_introspection/i_base_info_test.rb +0 -52
- data/test/ffi-gobject_introspection/i_constant_info_test.rb +0 -29
- data/test/ffi-gobject_introspection/i_enum_info_test.rb +0 -18
- data/test/ffi-gobject_introspection/i_function_info_test.rb +0 -6
- data/test/ffi-gobject_introspection/i_interface_info_test.rb +0 -23
- data/test/ffi-gobject_introspection/i_object_info_test.rb +0 -49
- data/test/ffi-gobject_introspection/i_property_info_test.rb +0 -47
- data/test/ffi-gobject_introspection/i_registered_type_info_test.rb +0 -27
- data/test/ffi-gobject_introspection/i_repository_test.rb +0 -81
- data/test/ffi-gobject_introspection/i_struct_info_test.rb +0 -23
- data/test/ffi-gobject_introspection/i_type_info_test.rb +0 -30
- data/test/ffi-gobject_introspection/i_union_info_test.rb +0 -17
- data/test/ffi-gobject_introspection/i_vfunc_info_test.rb +0 -41
- data/test/ffi-gobject_introspection/lib_test.rb +0 -13
- data/test/ffi-gobject_introspection/strv_test.rb +0 -46
- data/test/ffi-gobject_test.rb +0 -151
- data/test/gir_ffi/allocation_helper_test.rb +0 -36
- data/test/gir_ffi/arg_helper_test.rb +0 -139
- data/test/gir_ffi/boolean_test.rb +0 -43
- data/test/gir_ffi/boxed_base_test.rb +0 -65
- data/test/gir_ffi/builder_test.rb +0 -322
- data/test/gir_ffi/builders/argument_builder_test.rb +0 -651
- data/test/gir_ffi/builders/base_argument_builder_test.rb +0 -6
- data/test/gir_ffi/builders/callback_argument_builder_test.rb +0 -126
- data/test/gir_ffi/builders/callback_builder_test.rb +0 -117
- data/test/gir_ffi/builders/callback_return_value_builder_test.rb +0 -81
- data/test/gir_ffi/builders/constant_builder_test.rb +0 -6
- data/test/gir_ffi/builders/constructor_builder_test.rb +0 -37
- data/test/gir_ffi/builders/enum_builder_test.rb +0 -23
- data/test/gir_ffi/builders/field_builder_test.rb +0 -134
- data/test/gir_ffi/builders/function_builder_test.rb +0 -550
- data/test/gir_ffi/builders/initializer_builder_test.rb +0 -54
- data/test/gir_ffi/builders/interface_builder_test.rb +0 -32
- data/test/gir_ffi/builders/module_builder_test.rb +0 -43
- data/test/gir_ffi/builders/object_builder_test.rb +0 -98
- data/test/gir_ffi/builders/property_builder_test.rb +0 -158
- data/test/gir_ffi/builders/registered_type_builder_test.rb +0 -54
- data/test/gir_ffi/builders/return_value_builder_test.rb +0 -433
- data/test/gir_ffi/builders/signal_closure_builder_test.rb +0 -197
- data/test/gir_ffi/builders/struct_builder_test.rb +0 -93
- data/test/gir_ffi/builders/unintrospectable_boxed_builder_test.rb +0 -29
- data/test/gir_ffi/builders/unintrospectable_builder_test.rb +0 -84
- data/test/gir_ffi/builders/union_builder_test.rb +0 -28
- data/test/gir_ffi/builders/user_defined_builder_test.rb +0 -524
- data/test/gir_ffi/builders/vfunc_argument_builder_test.rb +0 -101
- data/test/gir_ffi/builders/vfunc_builder_test.rb +0 -241
- data/test/gir_ffi/callback_base_test.rb +0 -22
- data/test/gir_ffi/class_base_test.rb +0 -166
- data/test/gir_ffi/core_test.rb +0 -98
- data/test/gir_ffi/enum_base_test.rb +0 -43
- data/test/gir_ffi/error_type_info_test.rb +0 -50
- data/test/gir_ffi/ffi_ext/pointer_test.rb +0 -20
- data/test/gir_ffi/g_type_test.rb +0 -31
- data/test/gir_ffi/in_pointer_test.rb +0 -203
- data/test/gir_ffi/info_ext/i_callable_info_test.rb +0 -26
- data/test/gir_ffi/info_ext/i_callback_info_test.rb +0 -21
- data/test/gir_ffi/info_ext/i_field_info_test.rb +0 -37
- data/test/gir_ffi/info_ext/i_function_info_test.rb +0 -74
- data/test/gir_ffi/info_ext/i_signal_info_test.rb +0 -32
- data/test/gir_ffi/info_ext/i_type_info_test.rb +0 -711
- data/test/gir_ffi/info_ext/i_unresolved_info_test.rb +0 -19
- data/test/gir_ffi/info_ext/safe_constant_name_test.rb +0 -26
- data/test/gir_ffi/info_ext/safe_function_name_test.rb +0 -26
- data/test/gir_ffi/interface_base_test.rb +0 -20
- data/test/gir_ffi/method_stubber_test.rb +0 -65
- data/test/gir_ffi/object_base_test.rb +0 -64
- data/test/gir_ffi/object_store_test.rb +0 -41
- data/test/gir_ffi/receiver_argument_info_test.rb +0 -33
- data/test/gir_ffi/sized_array_test.rb +0 -206
- data/test/gir_ffi/struct_base_test.rb +0 -23
- data/test/gir_ffi/struct_like_base_test.rb +0 -167
- data/test/gir_ffi/type_map_test.rb +0 -17
- data/test/gir_ffi/unintrospectable_type_info_test.rb +0 -121
- data/test/gir_ffi/union_base_test.rb +0 -23
- data/test/gir_ffi/user_defined_object_info_test.rb +0 -119
- data/test/gir_ffi/user_defined_property_info_test.rb +0 -39
- data/test/gir_ffi/variable_name_generator_test.rb +0 -18
- data/test/gir_ffi/version_test.rb +0 -9
- data/test/gir_ffi/zero_terminated_test.rb +0 -108
- data/test/gir_ffi_test_helper.rb +0 -84
- data/test/integration/callback_exceptions_test.rb +0 -59
- data/test/integration/derived_classes_test.rb +0 -53
- data/test/integration/generated_everything_test.rb +0 -452
- data/test/integration/generated_gimarshallingtests_test.rb +0 -3096
- data/test/integration/generated_gio_test.rb +0 -116
- data/test/integration/generated_glib_test.rb +0 -10
- data/test/integration/generated_gobject_test.rb +0 -124
- data/test/integration/generated_gst_test.rb +0 -38
- data/test/integration/generated_gtk_source_test.rb +0 -32
- data/test/integration/generated_gtop_test.rb +0 -22
- data/test/integration/generated_pango_ft2_test.rb +0 -17
- data/test/integration/generated_pango_test.rb +0 -24
- data/test/integration/generated_regress_test.rb +0 -4038
- data/test/integration/generated_secret_test.rb +0 -14
- data/test/integration/generated_utility_test.rb +0 -174
- data/test/integration/generated_warnlib_test.rb +0 -43
- data/test/integration/method_lookup_test.rb +0 -34
- data/test/introspection_test_helper.rb +0 -93
- data/test/lib/Makefile.am +0 -110
- data/test/lib/autogen.sh +0 -4
- data/test/lib/configure.ac +0 -34
- data/test/lib/m4/jhflags.m4 +0 -21
- data/test/minitest/stats_plugin.rb +0 -30
@@ -12,6 +12,7 @@ module GirFFI
|
|
12
12
|
end
|
13
13
|
|
14
14
|
def setup_class
|
15
|
+
check_ancestry
|
15
16
|
setup_layout
|
16
17
|
register_type
|
17
18
|
setup_constants
|
@@ -26,6 +27,12 @@ module GirFFI
|
|
26
27
|
|
27
28
|
private
|
28
29
|
|
30
|
+
def check_ancestry
|
31
|
+
unless klass < GirFFI::ObjectBase
|
32
|
+
raise ArgumentError, "#{klass} is not a GObject class"
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
29
36
|
def register_type
|
30
37
|
@gtype = GObject.type_register_static(parent_gtype.to_i,
|
31
38
|
info.g_name,
|
@@ -98,7 +105,7 @@ module GirFFI
|
|
98
105
|
end
|
99
106
|
|
100
107
|
def class_size
|
101
|
-
parent_gtype.class_size + interface_gtypes.
|
108
|
+
parent_gtype.class_size + interface_gtypes.sum(&:class_size)
|
102
109
|
end
|
103
110
|
|
104
111
|
def setup_properties(object_class_ptr)
|
@@ -1,6 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require "gir_ffi/type_base"
|
4
|
+
require "set"
|
4
5
|
|
5
6
|
module GirFFI
|
6
7
|
# Base module for callbacks and vfuncs.
|
@@ -35,14 +36,14 @@ module GirFFI
|
|
35
36
|
from_native ptr, nil
|
36
37
|
end
|
37
38
|
|
38
|
-
CALLBACKS =
|
39
|
+
CALLBACKS = Set.new
|
39
40
|
|
40
41
|
def self.store_callback(prc)
|
41
|
-
CALLBACKS
|
42
|
+
CALLBACKS.add prc
|
42
43
|
end
|
43
44
|
|
44
45
|
def self.drop_callback(prc)
|
45
|
-
CALLBACKS.delete prc
|
46
|
+
CALLBACKS.delete prc
|
46
47
|
end
|
47
48
|
|
48
49
|
# Create Callback from a Proc. Makes sure arguments are properly wrapped,
|
@@ -57,11 +58,9 @@ module GirFFI
|
|
57
58
|
return unless prc
|
58
59
|
|
59
60
|
new do |*args|
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
GLib::MainLoop.handle_exception e
|
64
|
-
end
|
61
|
+
call_with_argument_mapping(prc, *args)
|
62
|
+
rescue StandardError => e
|
63
|
+
GLib::MainLoop.handle_exception e
|
65
64
|
end
|
66
65
|
end
|
67
66
|
|
data/lib/gir_ffi/class_base.rb
CHANGED
data/lib/gir_ffi/core.rb
CHANGED
@@ -28,8 +28,23 @@ module GirFFI
|
|
28
28
|
Builder.build_module namespace, version
|
29
29
|
end
|
30
30
|
|
31
|
-
def define_type(klass
|
32
|
-
|
31
|
+
def define_type(klass)
|
32
|
+
unless klass < GirFFI::ObjectBase
|
33
|
+
raise ArgumentError, "#{klass} is not a GObject class"
|
34
|
+
end
|
35
|
+
|
36
|
+
klass.prepare_user_defined_class
|
37
|
+
info = klass.gir_info
|
38
|
+
|
39
|
+
unless info.is_a? UserDefinedObjectInfo
|
40
|
+
raise ArgumentError, "#{klass} is not a user-defined class"
|
41
|
+
end
|
42
|
+
|
43
|
+
if block_given?
|
44
|
+
warn "Using define_type with a block is deprecated." \
|
45
|
+
" Call the relevant functions inside the class definition instead."
|
46
|
+
yield info
|
47
|
+
end
|
33
48
|
Builders::UserDefinedBuilder.new(info).build_class
|
34
49
|
|
35
50
|
klass.gtype
|
data/lib/gir_ffi/glib_error.rb
CHANGED
@@ -4,8 +4,7 @@ module GirFFI
|
|
4
4
|
# Exception class to be raised whenever an error is signaled through
|
5
5
|
# GLib::Error.
|
6
6
|
class GLibError < RuntimeError
|
7
|
-
attr_reader :domain_quark
|
8
|
-
attr_reader :code
|
7
|
+
attr_reader :domain_quark, :code
|
9
8
|
|
10
9
|
def initialize(g_error)
|
11
10
|
@domain_quark = g_error.domain
|
data/lib/gir_ffi/in_pointer.rb
CHANGED
@@ -67,6 +67,8 @@ module GirFFI
|
|
67
67
|
from_utf8_array ary
|
68
68
|
when :gboolean
|
69
69
|
from_boolean_array ary
|
70
|
+
when :guint8
|
71
|
+
from_char_array ary
|
70
72
|
else
|
71
73
|
from_basic_type_array type, ary
|
72
74
|
end
|
@@ -92,6 +94,11 @@ module GirFFI
|
|
92
94
|
from_basic_type_array :int, ary.map { |val| val ? 1 : 0 }
|
93
95
|
end
|
94
96
|
|
97
|
+
def from_char_array(ary)
|
98
|
+
ary = ary.bytes if ary.is_a? String
|
99
|
+
from_basic_type_array :int8, ary
|
100
|
+
end
|
101
|
+
|
95
102
|
def from_pointer_array(type, ary)
|
96
103
|
from_basic_type_array :pointer, ary.map { |elem| from type, elem }
|
97
104
|
end
|
data/lib/gir_ffi/object_base.rb
CHANGED
@@ -81,5 +81,32 @@ module GirFFI
|
|
81
81
|
it < GirFFI::ObjectBase || it.singleton_class.include?(InterfaceBase)
|
82
82
|
end
|
83
83
|
end
|
84
|
+
|
85
|
+
def self.prepare_user_defined_class
|
86
|
+
return if const_defined? :GIR_INFO, false
|
87
|
+
|
88
|
+
info = UserDefinedObjectInfo.new(self)
|
89
|
+
const_set :GIR_INFO, info
|
90
|
+
end
|
91
|
+
|
92
|
+
def self.install_property(param_spec)
|
93
|
+
if const_defined? :GIR_FFI_BUILDER, false
|
94
|
+
raise "Installing a property in a class that is already set up is not supported"
|
95
|
+
end
|
96
|
+
|
97
|
+
prepare_user_defined_class
|
98
|
+
|
99
|
+
gir_info.install_property(param_spec)
|
100
|
+
end
|
101
|
+
|
102
|
+
def self.install_vfunc_implementation(name, implementation = nil)
|
103
|
+
if const_defined? :GIR_FFI_BUILDER, false
|
104
|
+
raise "Installing a property in a class that is already set up is not supported"
|
105
|
+
end
|
106
|
+
|
107
|
+
prepare_user_defined_class
|
108
|
+
|
109
|
+
gir_info.install_vfunc_implementation(name, implementation)
|
110
|
+
end
|
84
111
|
end
|
85
112
|
end
|
@@ -3,8 +3,7 @@
|
|
3
3
|
module GirFFI
|
4
4
|
# Represents a return value with the same interface as IArgInfo
|
5
5
|
class ReturnValueInfo
|
6
|
-
attr_reader :argument_type
|
7
|
-
attr_reader :ownership_transfer
|
6
|
+
attr_reader :argument_type, :ownership_transfer
|
8
7
|
|
9
8
|
def initialize(type, ownership_transfer, skip)
|
10
9
|
@argument_type = type
|
data/lib/gir_ffi/struct_base.rb
CHANGED
@@ -4,14 +4,6 @@ require "gir_ffi/struct_like_base"
|
|
4
4
|
|
5
5
|
module GirFFI
|
6
6
|
# Base class for generated classes representing GLib structs.
|
7
|
-
class StructBase <
|
8
|
-
extend FFI::DataConverter
|
9
|
-
include GirFFI::StructLikeBase
|
10
|
-
|
11
|
-
def initialize
|
12
|
-
@struct = self.class::Struct.new
|
13
|
-
@struct.owned = true
|
14
|
-
@struct.to_ptr.autorelease = false
|
15
|
-
end
|
7
|
+
class StructBase < StructLikeBase
|
16
8
|
end
|
17
9
|
end
|
@@ -1,15 +1,19 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
module GirFFI
|
4
|
-
# Base
|
4
|
+
# Base class providing methods for generated classes representing GLib
|
5
5
|
# structs, unions and boxed types.
|
6
|
-
|
7
|
-
|
8
|
-
|
6
|
+
class StructLikeBase < ClassBase
|
7
|
+
extend FFI::DataConverter
|
8
|
+
|
9
|
+
def initialize
|
10
|
+
store_pointer(nil)
|
11
|
+
struct.owned = true
|
12
|
+
struct.to_ptr.autorelease = false
|
9
13
|
end
|
10
14
|
|
11
15
|
# Class methods for struct-like classes.
|
12
|
-
|
16
|
+
class << self
|
13
17
|
def native_type
|
14
18
|
FFI::Type::Struct.new(self::Struct)
|
15
19
|
end
|
data/lib/gir_ffi/type_map.rb
CHANGED
data/lib/gir_ffi/union_base.rb
CHANGED
@@ -4,14 +4,6 @@ require "gir_ffi/boxed_base"
|
|
4
4
|
|
5
5
|
module GirFFI
|
6
6
|
# Base class for generated classes representing GLib unions.
|
7
|
-
class UnionBase <
|
8
|
-
extend FFI::DataConverter
|
9
|
-
include GirFFI::StructLikeBase
|
10
|
-
|
11
|
-
def initialize
|
12
|
-
@struct = self.class::Struct.new
|
13
|
-
@struct.owned = true
|
14
|
-
@struct.to_ptr.autorelease = false
|
15
|
-
end
|
7
|
+
class UnionBase < StructLikeBase
|
16
8
|
end
|
17
9
|
end
|
@@ -13,6 +13,8 @@ module GirFFI
|
|
13
13
|
@klass = klass
|
14
14
|
@properties = []
|
15
15
|
@vfunc_implementations = []
|
16
|
+
|
17
|
+
# FIXME: Limit access to only install_property and install_vfunc_implementation.
|
16
18
|
yield self if block_given?
|
17
19
|
end
|
18
20
|
|
@@ -25,7 +27,6 @@ module GirFFI
|
|
25
27
|
end
|
26
28
|
|
27
29
|
def install_vfunc_implementation(name, implementation = nil)
|
28
|
-
implementation ||= ->(obj, *args) { obj.public_send name, *args }
|
29
30
|
@vfunc_implementations << VFuncImplementation.new(name, implementation)
|
30
31
|
end
|
31
32
|
|
@@ -51,7 +52,7 @@ module GirFFI
|
|
51
52
|
|
52
53
|
# TODO: Create custom class that includes the interfaces instead
|
53
54
|
def class_struct
|
54
|
-
|
55
|
+
nil
|
55
56
|
end
|
56
57
|
|
57
58
|
def interfaces
|
data/lib/gir_ffi/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gir_ffi
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.15.
|
4
|
+
version: 0.15.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matijs van Zuijlen
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-01-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: ffi
|
@@ -44,14 +44,14 @@ dependencies:
|
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: 0.
|
47
|
+
version: 1.0.0
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: 0.
|
54
|
+
version: 1.0.0
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: minitest
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -80,6 +80,34 @@ dependencies:
|
|
80
80
|
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: '13.0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: rake-manifest
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - "~>"
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: 0.2.0
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - "~>"
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: 0.2.0
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: rexml
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - "~>"
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '3.0'
|
104
|
+
type: :development
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - "~>"
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '3.0'
|
83
111
|
- !ruby/object:Gem::Dependency
|
84
112
|
name: rspec-mocks
|
85
113
|
requirement: !ruby/object:Gem::Requirement
|
@@ -94,25 +122,81 @@ dependencies:
|
|
94
122
|
- - "~>"
|
95
123
|
- !ruby/object:Gem::Version
|
96
124
|
version: '3.5'
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: rubocop
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - "~>"
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: 1.8.0
|
132
|
+
type: :development
|
133
|
+
prerelease: false
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - "~>"
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: 1.8.0
|
139
|
+
- !ruby/object:Gem::Dependency
|
140
|
+
name: rubocop-minitest
|
141
|
+
requirement: !ruby/object:Gem::Requirement
|
142
|
+
requirements:
|
143
|
+
- - "~>"
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: 0.10.1
|
146
|
+
type: :development
|
147
|
+
prerelease: false
|
148
|
+
version_requirements: !ruby/object:Gem::Requirement
|
149
|
+
requirements:
|
150
|
+
- - "~>"
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: 0.10.1
|
153
|
+
- !ruby/object:Gem::Dependency
|
154
|
+
name: rubocop-packaging
|
155
|
+
requirement: !ruby/object:Gem::Requirement
|
156
|
+
requirements:
|
157
|
+
- - "~>"
|
158
|
+
- !ruby/object:Gem::Version
|
159
|
+
version: 0.5.0
|
160
|
+
type: :development
|
161
|
+
prerelease: false
|
162
|
+
version_requirements: !ruby/object:Gem::Requirement
|
163
|
+
requirements:
|
164
|
+
- - "~>"
|
165
|
+
- !ruby/object:Gem::Version
|
166
|
+
version: 0.5.0
|
167
|
+
- !ruby/object:Gem::Dependency
|
168
|
+
name: rubocop-performance
|
169
|
+
requirement: !ruby/object:Gem::Requirement
|
170
|
+
requirements:
|
171
|
+
- - "~>"
|
172
|
+
- !ruby/object:Gem::Version
|
173
|
+
version: 1.9.0
|
174
|
+
type: :development
|
175
|
+
prerelease: false
|
176
|
+
version_requirements: !ruby/object:Gem::Requirement
|
177
|
+
requirements:
|
178
|
+
- - "~>"
|
179
|
+
- !ruby/object:Gem::Version
|
180
|
+
version: 1.9.0
|
97
181
|
- !ruby/object:Gem::Dependency
|
98
182
|
name: simplecov
|
99
183
|
requirement: !ruby/object:Gem::Requirement
|
100
184
|
requirements:
|
101
185
|
- - "~>"
|
102
186
|
- !ruby/object:Gem::Version
|
103
|
-
version: 0.
|
187
|
+
version: 0.21.0
|
104
188
|
type: :development
|
105
189
|
prerelease: false
|
106
190
|
version_requirements: !ruby/object:Gem::Requirement
|
107
191
|
requirements:
|
108
192
|
- - "~>"
|
109
193
|
- !ruby/object:Gem::Version
|
110
|
-
version: 0.
|
111
|
-
description: |
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
194
|
+
version: 0.21.0
|
195
|
+
description: |
|
196
|
+
GirFFI creates bindings for GObject-based libraries at runtime based on introspection
|
197
|
+
data provided by the GObject Introspection Repository (GIR) system. Bindings are created
|
198
|
+
at runtime and use FFI to interface with the C libraries. In cases where the GIR does not
|
199
|
+
provide enough or correct information to create sane bindings, overrides may be created.
|
116
200
|
email:
|
117
201
|
- matijs@matijs.net
|
118
202
|
executables: []
|
@@ -126,10 +210,10 @@ files:
|
|
126
210
|
- COPYING.LIB
|
127
211
|
- Changelog.md
|
128
212
|
- DESIGN.md
|
129
|
-
- Gemfile
|
130
213
|
- README.md
|
131
|
-
- Rakefile
|
132
214
|
- TODO.md
|
215
|
+
- docs/Documentation.md
|
216
|
+
- docs/Subclassing.md
|
133
217
|
- examples/clutter.rb
|
134
218
|
- examples/main_loop.rb
|
135
219
|
- lib/ffi-glib.rb
|
@@ -305,135 +389,14 @@ files:
|
|
305
389
|
- lib/gir_ffi/version.rb
|
306
390
|
- lib/gir_ffi/vfunc_implementation.rb
|
307
391
|
- lib/gir_ffi/zero_terminated.rb
|
308
|
-
- tasks/test.rake
|
309
|
-
- test/base_test_helper.rb
|
310
|
-
- test/ffi-glib/array_test.rb
|
311
|
-
- test/ffi-glib/byte_array_test.rb
|
312
|
-
- test/ffi-glib/bytes_test.rb
|
313
|
-
- test/ffi-glib/closure_test.rb
|
314
|
-
- test/ffi-glib/destroy_notify_test.rb
|
315
|
-
- test/ffi-glib/hash_table_test.rb
|
316
|
-
- test/ffi-glib/list_test.rb
|
317
|
-
- test/ffi-glib/main_loop_test.rb
|
318
|
-
- test/ffi-glib/ptr_array_test.rb
|
319
|
-
- test/ffi-glib/ruby_closure_test.rb
|
320
|
-
- test/ffi-glib/s_list_test.rb
|
321
|
-
- test/ffi-glib/strv_test.rb
|
322
|
-
- test/ffi-glib/variant_test.rb
|
323
|
-
- test/ffi-gobject/gobject_test.rb
|
324
|
-
- test/ffi-gobject/object_class_test.rb
|
325
|
-
- test/ffi-gobject/object_test.rb
|
326
|
-
- test/ffi-gobject/param_spec_test.rb
|
327
|
-
- test/ffi-gobject/value_test.rb
|
328
|
-
- test/ffi-gobject_introspection/gobject_type_init_test.rb
|
329
|
-
- test/ffi-gobject_introspection/i_base_info_test.rb
|
330
|
-
- test/ffi-gobject_introspection/i_constant_info_test.rb
|
331
|
-
- test/ffi-gobject_introspection/i_enum_info_test.rb
|
332
|
-
- test/ffi-gobject_introspection/i_function_info_test.rb
|
333
|
-
- test/ffi-gobject_introspection/i_interface_info_test.rb
|
334
|
-
- test/ffi-gobject_introspection/i_object_info_test.rb
|
335
|
-
- test/ffi-gobject_introspection/i_property_info_test.rb
|
336
|
-
- test/ffi-gobject_introspection/i_registered_type_info_test.rb
|
337
|
-
- test/ffi-gobject_introspection/i_repository_test.rb
|
338
|
-
- test/ffi-gobject_introspection/i_struct_info_test.rb
|
339
|
-
- test/ffi-gobject_introspection/i_type_info_test.rb
|
340
|
-
- test/ffi-gobject_introspection/i_union_info_test.rb
|
341
|
-
- test/ffi-gobject_introspection/i_vfunc_info_test.rb
|
342
|
-
- test/ffi-gobject_introspection/lib_test.rb
|
343
|
-
- test/ffi-gobject_introspection/strv_test.rb
|
344
|
-
- test/ffi-gobject_test.rb
|
345
|
-
- test/gir_ffi/allocation_helper_test.rb
|
346
|
-
- test/gir_ffi/arg_helper_test.rb
|
347
|
-
- test/gir_ffi/boolean_test.rb
|
348
|
-
- test/gir_ffi/boxed_base_test.rb
|
349
|
-
- test/gir_ffi/builder_test.rb
|
350
|
-
- test/gir_ffi/builders/argument_builder_test.rb
|
351
|
-
- test/gir_ffi/builders/base_argument_builder_test.rb
|
352
|
-
- test/gir_ffi/builders/callback_argument_builder_test.rb
|
353
|
-
- test/gir_ffi/builders/callback_builder_test.rb
|
354
|
-
- test/gir_ffi/builders/callback_return_value_builder_test.rb
|
355
|
-
- test/gir_ffi/builders/constant_builder_test.rb
|
356
|
-
- test/gir_ffi/builders/constructor_builder_test.rb
|
357
|
-
- test/gir_ffi/builders/enum_builder_test.rb
|
358
|
-
- test/gir_ffi/builders/field_builder_test.rb
|
359
|
-
- test/gir_ffi/builders/function_builder_test.rb
|
360
|
-
- test/gir_ffi/builders/initializer_builder_test.rb
|
361
|
-
- test/gir_ffi/builders/interface_builder_test.rb
|
362
|
-
- test/gir_ffi/builders/module_builder_test.rb
|
363
|
-
- test/gir_ffi/builders/object_builder_test.rb
|
364
|
-
- test/gir_ffi/builders/property_builder_test.rb
|
365
|
-
- test/gir_ffi/builders/registered_type_builder_test.rb
|
366
|
-
- test/gir_ffi/builders/return_value_builder_test.rb
|
367
|
-
- test/gir_ffi/builders/signal_closure_builder_test.rb
|
368
|
-
- test/gir_ffi/builders/struct_builder_test.rb
|
369
|
-
- test/gir_ffi/builders/unintrospectable_boxed_builder_test.rb
|
370
|
-
- test/gir_ffi/builders/unintrospectable_builder_test.rb
|
371
|
-
- test/gir_ffi/builders/union_builder_test.rb
|
372
|
-
- test/gir_ffi/builders/user_defined_builder_test.rb
|
373
|
-
- test/gir_ffi/builders/vfunc_argument_builder_test.rb
|
374
|
-
- test/gir_ffi/builders/vfunc_builder_test.rb
|
375
|
-
- test/gir_ffi/callback_base_test.rb
|
376
|
-
- test/gir_ffi/class_base_test.rb
|
377
|
-
- test/gir_ffi/core_test.rb
|
378
|
-
- test/gir_ffi/enum_base_test.rb
|
379
|
-
- test/gir_ffi/error_type_info_test.rb
|
380
|
-
- test/gir_ffi/ffi_ext/pointer_test.rb
|
381
|
-
- test/gir_ffi/g_type_test.rb
|
382
|
-
- test/gir_ffi/in_pointer_test.rb
|
383
|
-
- test/gir_ffi/info_ext/i_callable_info_test.rb
|
384
|
-
- test/gir_ffi/info_ext/i_callback_info_test.rb
|
385
|
-
- test/gir_ffi/info_ext/i_field_info_test.rb
|
386
|
-
- test/gir_ffi/info_ext/i_function_info_test.rb
|
387
|
-
- test/gir_ffi/info_ext/i_signal_info_test.rb
|
388
|
-
- test/gir_ffi/info_ext/i_type_info_test.rb
|
389
|
-
- test/gir_ffi/info_ext/i_unresolved_info_test.rb
|
390
|
-
- test/gir_ffi/info_ext/safe_constant_name_test.rb
|
391
|
-
- test/gir_ffi/info_ext/safe_function_name_test.rb
|
392
|
-
- test/gir_ffi/interface_base_test.rb
|
393
|
-
- test/gir_ffi/method_stubber_test.rb
|
394
|
-
- test/gir_ffi/object_base_test.rb
|
395
|
-
- test/gir_ffi/object_store_test.rb
|
396
|
-
- test/gir_ffi/receiver_argument_info_test.rb
|
397
|
-
- test/gir_ffi/sized_array_test.rb
|
398
|
-
- test/gir_ffi/struct_base_test.rb
|
399
|
-
- test/gir_ffi/struct_like_base_test.rb
|
400
|
-
- test/gir_ffi/type_map_test.rb
|
401
|
-
- test/gir_ffi/unintrospectable_type_info_test.rb
|
402
|
-
- test/gir_ffi/union_base_test.rb
|
403
|
-
- test/gir_ffi/user_defined_object_info_test.rb
|
404
|
-
- test/gir_ffi/user_defined_property_info_test.rb
|
405
|
-
- test/gir_ffi/variable_name_generator_test.rb
|
406
|
-
- test/gir_ffi/version_test.rb
|
407
|
-
- test/gir_ffi/zero_terminated_test.rb
|
408
|
-
- test/gir_ffi_test_helper.rb
|
409
|
-
- test/integration/callback_exceptions_test.rb
|
410
|
-
- test/integration/derived_classes_test.rb
|
411
|
-
- test/integration/generated_everything_test.rb
|
412
|
-
- test/integration/generated_gimarshallingtests_test.rb
|
413
|
-
- test/integration/generated_gio_test.rb
|
414
|
-
- test/integration/generated_glib_test.rb
|
415
|
-
- test/integration/generated_gobject_test.rb
|
416
|
-
- test/integration/generated_gst_test.rb
|
417
|
-
- test/integration/generated_gtk_source_test.rb
|
418
|
-
- test/integration/generated_gtop_test.rb
|
419
|
-
- test/integration/generated_pango_ft2_test.rb
|
420
|
-
- test/integration/generated_pango_test.rb
|
421
|
-
- test/integration/generated_regress_test.rb
|
422
|
-
- test/integration/generated_secret_test.rb
|
423
|
-
- test/integration/generated_utility_test.rb
|
424
|
-
- test/integration/generated_warnlib_test.rb
|
425
|
-
- test/integration/method_lookup_test.rb
|
426
|
-
- test/introspection_test_helper.rb
|
427
|
-
- test/lib/Makefile.am
|
428
|
-
- test/lib/autogen.sh
|
429
|
-
- test/lib/configure.ac
|
430
|
-
- test/lib/m4/jhflags.m4
|
431
|
-
- test/minitest/stats_plugin.rb
|
432
392
|
homepage: http://www.github.com/mvz/ruby-gir-ffi
|
433
393
|
licenses:
|
434
394
|
- LGPL-2.1+
|
435
|
-
metadata:
|
436
|
-
|
395
|
+
metadata:
|
396
|
+
homepage_uri: http://www.github.com/mvz/ruby-gir-ffi
|
397
|
+
source_code_uri: https://github.com/mvz/gir_ffi
|
398
|
+
changelog_uri: https://github.com/mvz/gir_ffi/blob/master/Changelog.md
|
399
|
+
post_install_message:
|
437
400
|
rdoc_options:
|
438
401
|
- "--main"
|
439
402
|
- README.md
|
@@ -443,15 +406,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
443
406
|
requirements:
|
444
407
|
- - ">="
|
445
408
|
- !ruby/object:Gem::Version
|
446
|
-
version: 2.
|
409
|
+
version: 2.5.0
|
447
410
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
448
411
|
requirements:
|
449
412
|
- - ">="
|
450
413
|
- !ruby/object:Gem::Version
|
451
414
|
version: '0'
|
452
415
|
requirements: []
|
453
|
-
rubygems_version: 3.
|
454
|
-
signing_key:
|
416
|
+
rubygems_version: 3.2.3
|
417
|
+
signing_key:
|
455
418
|
specification_version: 4
|
456
419
|
summary: FFI-based GObject binding using the GObject Introspection Repository
|
457
420
|
test_files: []
|