gir_ffi 0.9.5 → 0.10.0.pre1

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.
Files changed (72) hide show
  1. checksums.yaml +4 -4
  2. data/Changelog.md +9 -0
  3. data/lib/ffi-glib/byte_array.rb +1 -1
  4. data/lib/ffi-glib/bytes.rb +4 -4
  5. data/lib/ffi-glib/container_class_methods.rb +2 -0
  6. data/lib/ffi-glib/iconv.rb +2 -2
  7. data/lib/ffi-glib/variant.rb +10 -2
  8. data/lib/ffi-gobject.rb +6 -14
  9. data/lib/ffi-gobject/object.rb +7 -0
  10. data/lib/ffi-gobject/object_class.rb +1 -1
  11. data/lib/ffi-gobject/param_spec.rb +12 -0
  12. data/lib/ffi-gobject/value.rb +20 -11
  13. data/lib/gir_ffi-base/gobject.rb +35 -3
  14. data/lib/gir_ffi-base/gobject/lib.rb +2 -0
  15. data/lib/gir_ffi/allocation_helper.rb +11 -0
  16. data/lib/gir_ffi/arg_helper.rb +4 -0
  17. data/lib/gir_ffi/boxed_base.rb +28 -32
  18. data/lib/gir_ffi/builders/argument_builder.rb +31 -6
  19. data/lib/gir_ffi/builders/c_to_ruby_convertor.rb +36 -7
  20. data/lib/gir_ffi/builders/callback_argument_builder.rb +24 -10
  21. data/lib/gir_ffi/builders/closure_to_pointer_convertor.rb +1 -1
  22. data/lib/gir_ffi/builders/field_builder.rb +28 -10
  23. data/lib/gir_ffi/builders/full_c_to_ruby_convertor.rb +2 -3
  24. data/lib/gir_ffi/builders/initializer_return_value_builder.rb +5 -1
  25. data/lib/gir_ffi/builders/null_argument_builder.rb +0 -12
  26. data/lib/gir_ffi/builders/pointer_value_convertor.rb +38 -0
  27. data/lib/gir_ffi/builders/return_value_builder.rb +12 -10
  28. data/lib/gir_ffi/builders/ruby_to_c_convertor.rb +21 -2
  29. data/lib/gir_ffi/builders/struct_builder.rb +9 -2
  30. data/lib/gir_ffi/builders/{boxed_builder.rb → struct_like.rb} +2 -5
  31. data/lib/gir_ffi/builders/unintrospectable_boxed_builder.rb +5 -2
  32. data/lib/gir_ffi/builders/union_builder.rb +5 -2
  33. data/lib/gir_ffi/enum_base.rb +4 -0
  34. data/lib/gir_ffi/error_argument_info.rb +0 -16
  35. data/lib/gir_ffi/ffi_ext/pointer.rb +11 -5
  36. data/lib/gir_ffi/flags_base.rb +4 -0
  37. data/lib/gir_ffi/in_out_pointer.rb +5 -30
  38. data/lib/gir_ffi/in_pointer.rb +5 -4
  39. data/lib/gir_ffi/info_ext/i_type_info.rb +3 -5
  40. data/lib/gir_ffi/object_base.rb +4 -0
  41. data/lib/gir_ffi/sized_array.rb +20 -0
  42. data/lib/gir_ffi/struct_base.rb +13 -2
  43. data/lib/gir_ffi/struct_like_base.rb +53 -0
  44. data/lib/gir_ffi/union_base.rb +7 -1
  45. data/lib/gir_ffi/version.rb +1 -1
  46. data/test/ffi-glib/destroy_notify_test.rb +4 -1
  47. data/test/ffi-gobject/param_spec_test.rb +18 -0
  48. data/test/gir_ffi/arg_helper_test.rb +17 -0
  49. data/test/gir_ffi/boxed_base_test.rb +24 -0
  50. data/test/gir_ffi/builders/argument_builder_test.rb +156 -63
  51. data/test/gir_ffi/builders/callback_argument_builder_test.rb +10 -10
  52. data/test/gir_ffi/builders/callback_builder_test.rb +31 -8
  53. data/test/gir_ffi/builders/field_builder_test.rb +32 -30
  54. data/test/gir_ffi/builders/function_builder_test.rb +251 -45
  55. data/test/gir_ffi/builders/initializer_builder_test.rb +17 -1
  56. data/test/gir_ffi/builders/return_value_builder_test.rb +115 -68
  57. data/test/gir_ffi/builders/struct_builder_test.rb +6 -0
  58. data/test/gir_ffi/builders/unintrospectable_builder_test.rb +4 -1
  59. data/test/gir_ffi/builders/vfunc_builder_test.rb +10 -10
  60. data/test/gir_ffi/in_out_pointer_test.rb +12 -81
  61. data/test/gir_ffi/in_pointer_test.rb +0 -17
  62. data/test/gir_ffi/info_ext/i_type_info_test.rb +0 -10
  63. data/test/gir_ffi/sized_array_test.rb +62 -0
  64. data/test/gir_ffi/struct_base_test.rb +24 -0
  65. data/test/gir_ffi/union_base_test.rb +24 -0
  66. data/test/gir_ffi/version_test.rb +1 -1
  67. data/test/integration/generated_gimarshallingtests_test.rb +32 -12
  68. data/test/integration/generated_regress_test.rb +9 -12
  69. metadata +12 -8
  70. data/lib/ffi-gobject/base.rb +0 -27
  71. data/lib/gir_ffi/user_data_argument_info.rb +0 -24
  72. data/lib/gir_ffi/user_data_type_info.rb +0 -22
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.9.5
4
+ version: 0.10.0.pre1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matijs van Zuijlen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-03-05 00:00:00.000000000 Z
11
+ date: 2016-03-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ffi
@@ -164,11 +164,11 @@ files:
164
164
  - lib/ffi-glib/strv.rb
165
165
  - lib/ffi-glib/variant.rb
166
166
  - lib/ffi-gobject.rb
167
- - lib/ffi-gobject/base.rb
168
167
  - lib/ffi-gobject/closure.rb
169
168
  - lib/ffi-gobject/initially_unowned.rb
170
169
  - lib/ffi-gobject/object.rb
171
170
  - lib/ffi-gobject/object_class.rb
171
+ - lib/ffi-gobject/param_spec.rb
172
172
  - lib/ffi-gobject/ruby_closure.rb
173
173
  - lib/ffi-gobject/value.rb
174
174
  - lib/ffi-gobject_introspection.rb
@@ -213,7 +213,6 @@ files:
213
213
  - lib/gir_ffi/builders/base_method_builder.rb
214
214
  - lib/gir_ffi/builders/base_return_value_builder.rb
215
215
  - lib/gir_ffi/builders/base_type_builder.rb
216
- - lib/gir_ffi/builders/boxed_builder.rb
217
216
  - lib/gir_ffi/builders/c_to_ruby_convertor.rb
218
217
  - lib/gir_ffi/builders/callback_argument_builder.rb
219
218
  - lib/gir_ffi/builders/callback_builder.rb
@@ -241,6 +240,7 @@ files:
241
240
  - lib/gir_ffi/builders/null_convertor.rb
242
241
  - lib/gir_ffi/builders/null_return_value_builder.rb
243
242
  - lib/gir_ffi/builders/object_builder.rb
243
+ - lib/gir_ffi/builders/pointer_value_convertor.rb
244
244
  - lib/gir_ffi/builders/property_argument_builder.rb
245
245
  - lib/gir_ffi/builders/property_builder.rb
246
246
  - lib/gir_ffi/builders/property_return_value_builder.rb
@@ -249,6 +249,7 @@ files:
249
249
  - lib/gir_ffi/builders/ruby_to_c_convertor.rb
250
250
  - lib/gir_ffi/builders/signal_closure_builder.rb
251
251
  - lib/gir_ffi/builders/struct_builder.rb
252
+ - lib/gir_ffi/builders/struct_like.rb
252
253
  - lib/gir_ffi/builders/type_builder.rb
253
254
  - lib/gir_ffi/builders/unintrospectable_boxed_builder.rb
254
255
  - lib/gir_ffi/builders/unintrospectable_builder.rb
@@ -300,14 +301,13 @@ files:
300
301
  - lib/gir_ffi/signal_not_found_error.rb
301
302
  - lib/gir_ffi/sized_array.rb
302
303
  - lib/gir_ffi/struct_base.rb
304
+ - lib/gir_ffi/struct_like_base.rb
303
305
  - lib/gir_ffi/type_base.rb
304
306
  - lib/gir_ffi/type_map.rb
305
307
  - lib/gir_ffi/unintrospectable_boxed_info.rb
306
308
  - lib/gir_ffi/unintrospectable_signal_info.rb
307
309
  - lib/gir_ffi/unintrospectable_type_info.rb
308
310
  - lib/gir_ffi/union_base.rb
309
- - lib/gir_ffi/user_data_argument_info.rb
310
- - lib/gir_ffi/user_data_type_info.rb
311
311
  - lib/gir_ffi/user_defined_property_info.rb
312
312
  - lib/gir_ffi/user_defined_type_info.rb
313
313
  - lib/gir_ffi/variable_name_generator.rb
@@ -333,6 +333,7 @@ files:
333
333
  - test/ffi-gobject/gobject_test.rb
334
334
  - test/ffi-gobject/object_class_test.rb
335
335
  - test/ffi-gobject/object_test.rb
336
+ - test/ffi-gobject/param_spec_test.rb
336
337
  - test/ffi-gobject/value_test.rb
337
338
  - test/ffi-gobject_introspection/i_base_info_test.rb
338
339
  - test/ffi-gobject_introspection/i_constant_info_test.rb
@@ -351,6 +352,7 @@ files:
351
352
  - test/gir_ffi-base/glib/boolean_test.rb
352
353
  - test/gir_ffi-base/glib/strv_test.rb
353
354
  - test/gir_ffi/arg_helper_test.rb
355
+ - test/gir_ffi/boxed_base_test.rb
354
356
  - test/gir_ffi/builder_test.rb
355
357
  - test/gir_ffi/builders/argument_builder_test.rb
356
358
  - test/gir_ffi/builders/base_argument_builder_test.rb
@@ -397,8 +399,10 @@ files:
397
399
  - test/gir_ffi/object_base_test.rb
398
400
  - test/gir_ffi/object_store_test.rb
399
401
  - test/gir_ffi/sized_array_test.rb
402
+ - test/gir_ffi/struct_base_test.rb
400
403
  - test/gir_ffi/type_map_test.rb
401
404
  - test/gir_ffi/unintrospectable_type_info_test.rb
405
+ - test/gir_ffi/union_base_test.rb
402
406
  - test/gir_ffi/user_defined_property_info_test.rb
403
407
  - test/gir_ffi/user_defined_type_info_test.rb
404
408
  - test/gir_ffi/variable_name_generator_test.rb
@@ -445,9 +449,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
445
449
  version: 2.0.0
446
450
  required_rubygems_version: !ruby/object:Gem::Requirement
447
451
  requirements:
448
- - - ">="
452
+ - - ">"
449
453
  - !ruby/object:Gem::Version
450
- version: '0'
454
+ version: 1.3.1
451
455
  requirements: []
452
456
  rubyforge_project:
453
457
  rubygems_version: 2.5.1
@@ -1,27 +0,0 @@
1
- # frozen_string_literal: true
2
- # Preload type contants
3
- module GObject
4
- TYPE_INVALID = type_from_name('invalid')
5
- TYPE_NONE = type_from_name('void')
6
- TYPE_INTERFACE = type_from_name('GInterface')
7
- TYPE_CHAR = type_from_name('gchar')
8
- TYPE_UCHAR = type_from_name('guchar')
9
- TYPE_BOOLEAN = type_from_name('gboolean')
10
- TYPE_INT = type_from_name('gint')
11
- TYPE_UINT = type_from_name('guint')
12
- TYPE_LONG = type_from_name('glong')
13
- TYPE_ULONG = type_from_name('gulong')
14
- TYPE_INT64 = type_from_name('gint64')
15
- TYPE_UINT64 = type_from_name('guint64')
16
- TYPE_ENUM = type_from_name('GEnum')
17
- TYPE_FLAGS = type_from_name('GFlags')
18
- TYPE_FLOAT = type_from_name('gfloat')
19
- TYPE_DOUBLE = type_from_name('gdouble')
20
- TYPE_STRING = type_from_name('gchararray')
21
- TYPE_POINTER = type_from_name('gpointer')
22
- TYPE_BOXED = type_from_name('GBoxed')
23
- TYPE_PARAM = type_from_name('GParam')
24
- TYPE_OBJECT = type_from_name('GObject')
25
- TYPE_GTYPE = type_from_name('GType')
26
- TYPE_VARIANT = type_from_name('GVariant')
27
- end
@@ -1,24 +0,0 @@
1
- # frozen_string_literal: true
2
- module GirFFI
3
- # Class to represent the info for the user data argument of a signal handler.
4
- # Implements the necessary parts of IArgumentInfo's interface.
5
- class UserDataArgumentInfo
6
- attr_reader :argument_type
7
-
8
- def initialize(type)
9
- @argument_type = type
10
- end
11
-
12
- def direction
13
- :in
14
- end
15
-
16
- def skip?
17
- false
18
- end
19
-
20
- def name
21
- '_user_data'
22
- end
23
- end
24
- end
@@ -1,22 +0,0 @@
1
- # frozen_string_literal: true
2
- require 'gir_ffi/info_ext/i_type_info'
3
-
4
- module GirFFI
5
- # Represents the type of the user data (closure argument) of a signal or vfunc,
6
- # conforming, as needed, to the interface of GObjectIntrospection::ITypeInfo.
7
- class UserDataTypeInfo
8
- include InfoExt::ITypeInfo
9
-
10
- def tag
11
- :void
12
- end
13
-
14
- def pointer?
15
- true
16
- end
17
-
18
- def array_length
19
- -1
20
- end
21
- end
22
- end