gobject-introspection 3.1.6-x86-mingw32 → 3.1.7-x86-mingw32

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 (75) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +1 -1
  3. data/ext/gobject-introspection/extconf.rb +1 -7
  4. data/ext/gobject-introspection/rb-gi-argument.c +132 -9
  5. data/ext/gobject-introspection/rb-gi-function-info.c +4 -1
  6. data/lib/2.2/gobject_introspection.so +0 -0
  7. data/lib/2.3/gobject_introspection.so +0 -0
  8. data/lib/2.4/gobject_introspection.so +0 -0
  9. data/lib/gobject-introspection/loader.rb +9 -0
  10. data/vendor/local/bin/g-ir-compiler.exe +0 -0
  11. data/vendor/local/bin/g-ir-generate.exe +0 -0
  12. data/vendor/local/bin/g-ir-inspect.exe +0 -0
  13. data/vendor/local/bin/libgirepository-1.0-1.dll +0 -0
  14. data/vendor/local/lib/girepository-1.0/GLib-2.0.typelib +0 -0
  15. data/vendor/local/lib/gobject-introspection/giscanner/__init__.pyc +0 -0
  16. data/vendor/local/lib/gobject-introspection/giscanner/__init__.pyo +0 -0
  17. data/vendor/local/lib/gobject-introspection/giscanner/annotationmain.pyc +0 -0
  18. data/vendor/local/lib/gobject-introspection/giscanner/annotationmain.pyo +0 -0
  19. data/vendor/local/lib/gobject-introspection/giscanner/annotationparser.pyc +0 -0
  20. data/vendor/local/lib/gobject-introspection/giscanner/annotationparser.pyo +0 -0
  21. data/vendor/local/lib/gobject-introspection/giscanner/ast.pyc +0 -0
  22. data/vendor/local/lib/gobject-introspection/giscanner/ast.pyo +0 -0
  23. data/vendor/local/lib/gobject-introspection/giscanner/cachestore.pyc +0 -0
  24. data/vendor/local/lib/gobject-introspection/giscanner/cachestore.pyo +0 -0
  25. data/vendor/local/lib/gobject-introspection/giscanner/ccompiler.pyc +0 -0
  26. data/vendor/local/lib/gobject-introspection/giscanner/ccompiler.pyo +0 -0
  27. data/vendor/local/lib/gobject-introspection/giscanner/codegen.pyc +0 -0
  28. data/vendor/local/lib/gobject-introspection/giscanner/codegen.pyo +0 -0
  29. data/vendor/local/lib/gobject-introspection/giscanner/collections/__init__.pyc +0 -0
  30. data/vendor/local/lib/gobject-introspection/giscanner/collections/__init__.pyo +0 -0
  31. data/vendor/local/lib/gobject-introspection/giscanner/collections/counter.pyc +0 -0
  32. data/vendor/local/lib/gobject-introspection/giscanner/collections/counter.pyo +0 -0
  33. data/vendor/local/lib/gobject-introspection/giscanner/collections/ordereddict.pyc +0 -0
  34. data/vendor/local/lib/gobject-introspection/giscanner/collections/ordereddict.pyo +0 -0
  35. data/vendor/local/lib/gobject-introspection/giscanner/docmain.pyc +0 -0
  36. data/vendor/local/lib/gobject-introspection/giscanner/docmain.pyo +0 -0
  37. data/vendor/local/lib/gobject-introspection/giscanner/docwriter.pyc +0 -0
  38. data/vendor/local/lib/gobject-introspection/giscanner/docwriter.pyo +0 -0
  39. data/vendor/local/lib/gobject-introspection/giscanner/dumper.pyc +0 -0
  40. data/vendor/local/lib/gobject-introspection/giscanner/dumper.pyo +0 -0
  41. data/vendor/local/lib/gobject-introspection/giscanner/gdumpparser.pyc +0 -0
  42. data/vendor/local/lib/gobject-introspection/giscanner/gdumpparser.pyo +0 -0
  43. data/vendor/local/lib/gobject-introspection/giscanner/girparser.pyc +0 -0
  44. data/vendor/local/lib/gobject-introspection/giscanner/girparser.pyo +0 -0
  45. data/vendor/local/lib/gobject-introspection/giscanner/girwriter.pyc +0 -0
  46. data/vendor/local/lib/gobject-introspection/giscanner/girwriter.pyo +0 -0
  47. data/vendor/local/lib/gobject-introspection/giscanner/introspectablepass.pyc +0 -0
  48. data/vendor/local/lib/gobject-introspection/giscanner/introspectablepass.pyo +0 -0
  49. data/vendor/local/lib/gobject-introspection/giscanner/libtoolimporter.pyc +0 -0
  50. data/vendor/local/lib/gobject-introspection/giscanner/libtoolimporter.pyo +0 -0
  51. data/vendor/local/lib/gobject-introspection/giscanner/maintransformer.pyc +0 -0
  52. data/vendor/local/lib/gobject-introspection/giscanner/maintransformer.pyo +0 -0
  53. data/vendor/local/lib/gobject-introspection/giscanner/message.pyc +0 -0
  54. data/vendor/local/lib/gobject-introspection/giscanner/message.pyo +0 -0
  55. data/vendor/local/lib/gobject-introspection/giscanner/msvccompiler.pyc +0 -0
  56. data/vendor/local/lib/gobject-introspection/giscanner/msvccompiler.pyo +0 -0
  57. data/vendor/local/lib/gobject-introspection/giscanner/scannermain.pyc +0 -0
  58. data/vendor/local/lib/gobject-introspection/giscanner/scannermain.pyo +0 -0
  59. data/vendor/local/lib/gobject-introspection/giscanner/sectionparser.pyc +0 -0
  60. data/vendor/local/lib/gobject-introspection/giscanner/sectionparser.pyo +0 -0
  61. data/vendor/local/lib/gobject-introspection/giscanner/shlibs.pyc +0 -0
  62. data/vendor/local/lib/gobject-introspection/giscanner/shlibs.pyo +0 -0
  63. data/vendor/local/lib/gobject-introspection/giscanner/sourcescanner.pyc +0 -0
  64. data/vendor/local/lib/gobject-introspection/giscanner/sourcescanner.pyo +0 -0
  65. data/vendor/local/lib/gobject-introspection/giscanner/testcodegen.pyc +0 -0
  66. data/vendor/local/lib/gobject-introspection/giscanner/testcodegen.pyo +0 -0
  67. data/vendor/local/lib/gobject-introspection/giscanner/transformer.pyc +0 -0
  68. data/vendor/local/lib/gobject-introspection/giscanner/transformer.pyo +0 -0
  69. data/vendor/local/lib/gobject-introspection/giscanner/utils.pyc +0 -0
  70. data/vendor/local/lib/gobject-introspection/giscanner/utils.pyo +0 -0
  71. data/vendor/local/lib/gobject-introspection/giscanner/xmlwriter.pyc +0 -0
  72. data/vendor/local/lib/gobject-introspection/giscanner/xmlwriter.pyo +0 -0
  73. data/vendor/local/lib/libgirepository-1.0.dll.a +0 -0
  74. data/vendor/local/share/gir-1.0/GLib-2.0.gir +1 -1
  75. metadata +4 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 49d027c2c875a89357024dd4d9f887f9e44bad6b
4
- data.tar.gz: d270ee4e8a9b804ab1ea197b33d949c19a2c733b
3
+ metadata.gz: 415d182eaaa3216c7dcf3f92d6203ca01159dafd
4
+ data.tar.gz: 062d583196fe7af2d9124d0546d5210a094ac70e
5
5
  SHA512:
6
- metadata.gz: 5b1e8104ea27f042dde99b6fcd9e7e082412da8a64e242f681af65c75b0c32b9f76531dceb1619715d32f7a42c5697eaed4adceb89c44de82f4233f44b757998
7
- data.tar.gz: e43e4e20077278615b38568f832a271fcc8b76b279ea4f0ac6ee531972e7bb21331a708450d2232859517c8e61fcc1a8640ae9acc6ddfae5ecc40b9459bb5d56
6
+ metadata.gz: 1115c82c4d6cd9026e43c3b61dbecafc8a82737d4ec37a9a4862ab3bf69f7b78ee192a2d8891aa26ac21e268e604bef6295257e2eac4a76d12fef69f9c4b3b56
7
+ data.tar.gz: c30ab93a8ab65685750f5f2a699bd6364d8b784d1ec9deaffff4ebaec75a317dfcc96ac453a635a8b6d9a5bebc80fec561f9ef8b4a0782ace53cf81af56a01d3
data/Rakefile CHANGED
@@ -32,7 +32,7 @@ package_task = GNOME2::Rake::PackageTask.new do |package|
32
32
  :name => "glib",
33
33
  :download_site => :gnome,
34
34
  :label => "GLib",
35
- :version => "2.52.1",
35
+ :version => "2.52.3",
36
36
  :compression_method => "xz",
37
37
  :windows => {
38
38
  :build => false,
@@ -37,13 +37,7 @@ $LOAD_PATH.unshift(mkmf_gnome2_dir.to_s)
37
37
  module_name = "gobject_introspection"
38
38
  package_id = "gobject-introspection-1.0"
39
39
 
40
- begin
41
- require "mkmf-gnome2"
42
- rescue LoadError
43
- require "rubygems"
44
- gem "glib2"
45
- require "mkmf-gnome2"
46
- end
40
+ require "mkmf-gnome2"
47
41
 
48
42
  ["glib2"].each do |package|
49
43
  directory = "#{package}#{version_suffix}"
@@ -210,11 +210,22 @@ array_c_to_ruby_sized(gconstpointer *elements,
210
210
  }
211
211
  break;
212
212
  case GI_TYPE_TAG_INT16:
213
+ g_base_info_unref(element_type_info);
214
+ {
215
+ const gint16 *numbers = (const gint16 *)elements;
216
+ for (i = 0; i < n_elements; i++) {
217
+ rb_ary_push(rb_array, INT2NUM(numbers[i]));
218
+ }
219
+ }
220
+ break;
213
221
  case GI_TYPE_TAG_UINT16:
214
222
  g_base_info_unref(element_type_info);
215
- rb_raise(rb_eNotImpError,
216
- "TODO: GIArgument(array)[c][%s] -> Ruby",
217
- g_type_tag_to_string(element_type_tag));
223
+ {
224
+ const guint16 *numbers = (const guint16 *)elements;
225
+ for (i = 0; i < n_elements; i++) {
226
+ rb_ary_push(rb_array, UINT2NUM(numbers[i]));
227
+ }
228
+ }
218
229
  break;
219
230
  case GI_TYPE_TAG_INT32:
220
231
  g_base_info_unref(element_type_info);
@@ -227,9 +238,12 @@ array_c_to_ruby_sized(gconstpointer *elements,
227
238
  break;
228
239
  case GI_TYPE_TAG_UINT32:
229
240
  g_base_info_unref(element_type_info);
230
- rb_raise(rb_eNotImpError,
231
- "TODO: GIArgument(array)[c][%s] -> Ruby",
232
- g_type_tag_to_string(element_type_tag));
241
+ {
242
+ const guint32 *numbers = (const guint32 *)elements;
243
+ for (i = 0; i < n_elements; i++) {
244
+ rb_ary_push(rb_array, UINT2NUM(numbers[i]));
245
+ }
246
+ }
233
247
  break;
234
248
  case GI_TYPE_TAG_INT64:
235
249
  g_base_info_unref(element_type_info);
@@ -241,8 +255,32 @@ array_c_to_ruby_sized(gconstpointer *elements,
241
255
  }
242
256
  break;
243
257
  case GI_TYPE_TAG_UINT64:
258
+ g_base_info_unref(element_type_info);
259
+ {
260
+ const guint64 *numbers = (const guint64 *)elements;
261
+ for (i = 0; i < n_elements; i++) {
262
+ rb_ary_push(rb_array, ULL2NUM(numbers[i]));
263
+ }
264
+ }
265
+ break;
244
266
  case GI_TYPE_TAG_FLOAT:
267
+ g_base_info_unref(element_type_info);
268
+ {
269
+ const gfloat *numbers = (const gfloat *)elements;
270
+ for (i = 0; i < n_elements; i++) {
271
+ rb_ary_push(rb_array, rb_float_new(numbers[i]));
272
+ }
273
+ }
274
+ break;
245
275
  case GI_TYPE_TAG_DOUBLE:
276
+ g_base_info_unref(element_type_info);
277
+ {
278
+ const gdouble *numbers = (const gdouble *)elements;
279
+ for (i = 0; i < n_elements; i++) {
280
+ rb_ary_push(rb_array, rb_float_new(numbers[i]));
281
+ }
282
+ }
283
+ break;
246
284
  case GI_TYPE_TAG_GTYPE:
247
285
  g_base_info_unref(element_type_info);
248
286
  rb_raise(rb_eNotImpError,
@@ -2364,6 +2402,83 @@ rb_gi_return_argument_free_everything_glist(GIArgument *argument,
2364
2402
  }
2365
2403
  }
2366
2404
 
2405
+ static void
2406
+ rb_gi_return_argument_free_everything_gslist_interface(GIArgument *argument,
2407
+ G_GNUC_UNUSED GITypeInfo *type_info,
2408
+ GITypeInfo *element_type_info)
2409
+ {
2410
+ GIBaseInfo *interface_info;
2411
+ GIInfoType interface_type;
2412
+ const gchar *interface_name;
2413
+ GType gtype;
2414
+
2415
+ interface_info = g_type_info_get_interface(element_type_info);
2416
+ interface_type = g_base_info_get_type(interface_info);
2417
+ interface_name = g_info_type_to_string(interface_type);
2418
+ gtype = g_registered_type_info_get_g_type(interface_info);
2419
+ g_base_info_unref(interface_info);
2420
+ g_base_info_unref(element_type_info);
2421
+
2422
+ switch (interface_type) {
2423
+ case GI_INFO_TYPE_INVALID:
2424
+ case GI_INFO_TYPE_FUNCTION:
2425
+ case GI_INFO_TYPE_CALLBACK:
2426
+ rb_raise(rb_eNotImpError,
2427
+ "TODO: free GIArgument(GSList)[interface(%s)](%s) everything",
2428
+ interface_name,
2429
+ g_type_name(gtype));
2430
+ break;
2431
+ case GI_INFO_TYPE_STRUCT:
2432
+ if (gtype == G_TYPE_NONE) {
2433
+ rb_raise(rb_eNotImpError,
2434
+ "TODO: free GIArgument(GSList)[interface(%s)](%s) everything",
2435
+ interface_name,
2436
+ g_type_name(gtype));
2437
+ } else {
2438
+ g_slist_foreach(argument->v_pointer,
2439
+ rb_gi_boxed_free_callback,
2440
+ &gtype);
2441
+ g_slist_free(argument->v_pointer);
2442
+ }
2443
+ break;
2444
+ case GI_INFO_TYPE_BOXED:
2445
+ g_slist_foreach(argument->v_pointer, rb_gi_boxed_free_callback, &gtype);
2446
+ g_slist_free(argument->v_pointer);
2447
+ break;
2448
+ case GI_INFO_TYPE_ENUM:
2449
+ case GI_INFO_TYPE_FLAGS:
2450
+ rb_raise(rb_eNotImpError,
2451
+ "TODO: free GIArgument(GSList)[interface(%s)](%s) everything",
2452
+ interface_name,
2453
+ g_type_name(gtype));
2454
+ break;
2455
+ case GI_INFO_TYPE_OBJECT:
2456
+ case GI_INFO_TYPE_INTERFACE:
2457
+ g_slist_foreach(argument->v_pointer, (GFunc)g_object_unref, NULL);
2458
+ g_slist_free(argument->v_pointer);
2459
+ break;
2460
+ case GI_INFO_TYPE_CONSTANT:
2461
+ case GI_INFO_TYPE_INVALID_0:
2462
+ case GI_INFO_TYPE_UNION:
2463
+ case GI_INFO_TYPE_VALUE:
2464
+ case GI_INFO_TYPE_SIGNAL:
2465
+ case GI_INFO_TYPE_VFUNC:
2466
+ case GI_INFO_TYPE_PROPERTY:
2467
+ case GI_INFO_TYPE_FIELD:
2468
+ case GI_INFO_TYPE_ARG:
2469
+ case GI_INFO_TYPE_TYPE:
2470
+ case GI_INFO_TYPE_UNRESOLVED:
2471
+ rb_raise(rb_eNotImpError,
2472
+ "TODO: free GIArgument(GSList)[interface(%s)](%s) everything",
2473
+ interface_name,
2474
+ g_type_name(gtype));
2475
+ break;
2476
+ default:
2477
+ g_assert_not_reached();
2478
+ break;
2479
+ }
2480
+ }
2481
+
2367
2482
  static void
2368
2483
  rb_gi_return_argument_free_everything_gslist(GIArgument *argument,
2369
2484
  GITypeInfo *type_info)
@@ -2371,9 +2486,11 @@ rb_gi_return_argument_free_everything_gslist(GIArgument *argument,
2371
2486
  GITypeInfo *element_type_info;
2372
2487
  GITypeTag element_type_tag;
2373
2488
 
2489
+ if (!argument->v_pointer)
2490
+ return;
2491
+
2374
2492
  element_type_info = g_type_info_get_param_type(type_info, 0);
2375
2493
  element_type_tag = g_type_info_get_tag(element_type_info);
2376
- g_base_info_unref(element_type_info);
2377
2494
 
2378
2495
  switch (element_type_tag) {
2379
2496
  case GI_TYPE_TAG_VOID:
@@ -2389,34 +2506,40 @@ rb_gi_return_argument_free_everything_gslist(GIArgument *argument,
2389
2506
  case GI_TYPE_TAG_FLOAT:
2390
2507
  case GI_TYPE_TAG_DOUBLE:
2391
2508
  case GI_TYPE_TAG_GTYPE:
2509
+ g_base_info_unref(element_type_info);
2392
2510
  rb_raise(rb_eNotImpError,
2393
2511
  "TODO: free GIArgument(GSList)[%s] everything",
2394
2512
  g_type_tag_to_string(element_type_tag));
2395
2513
  break;
2396
2514
  case GI_TYPE_TAG_UTF8:
2397
2515
  case GI_TYPE_TAG_FILENAME:
2516
+ g_base_info_unref(element_type_info);
2398
2517
  g_slist_foreach(argument->v_pointer, (GFunc)g_free, NULL);
2399
2518
  g_slist_free(argument->v_pointer);
2400
2519
  break;
2401
2520
  case GI_TYPE_TAG_ARRAY:
2521
+ g_base_info_unref(element_type_info);
2402
2522
  rb_raise(rb_eNotImpError,
2403
2523
  "TODO: free GIArgument(GSList)[%s] everything",
2404
2524
  g_type_tag_to_string(element_type_tag));
2405
2525
  break;
2406
2526
  case GI_TYPE_TAG_INTERFACE:
2407
- g_slist_foreach(argument->v_pointer, (GFunc)g_object_unref, NULL);
2408
- g_slist_free(argument->v_pointer);
2527
+ rb_gi_return_argument_free_everything_gslist_interface(argument,
2528
+ type_info,
2529
+ element_type_info);
2409
2530
  break;
2410
2531
  case GI_TYPE_TAG_GLIST:
2411
2532
  case GI_TYPE_TAG_GSLIST:
2412
2533
  case GI_TYPE_TAG_GHASH:
2413
2534
  case GI_TYPE_TAG_ERROR:
2414
2535
  case GI_TYPE_TAG_UNICHAR:
2536
+ g_base_info_unref(element_type_info);
2415
2537
  rb_raise(rb_eNotImpError,
2416
2538
  "TODO: free GIArgument(GSList)[%s] everything",
2417
2539
  g_type_tag_to_string(element_type_tag));
2418
2540
  break;
2419
2541
  default:
2542
+ g_base_info_unref(element_type_info);
2420
2543
  g_assert_not_reached();
2421
2544
  break;
2422
2545
  }
@@ -1400,7 +1400,10 @@ rb_gi_function_info_invoke_raw(GIFunctionInfo *info,
1400
1400
  if (NIL_P(rb_receiver)) {
1401
1401
  receiver.v_pointer = NULL;
1402
1402
  } else {
1403
- if (gobject_based_p((GIBaseInfo *)info)) {
1403
+ VALUE rb_receiver_class;
1404
+ rb_receiver_class = rb_class_of(rb_receiver);
1405
+ if (gobject_based_p((GIBaseInfo *)info) ||
1406
+ rb_respond_to(rb_receiver_class, rb_intern("gtype"))) {
1404
1407
  receiver.v_pointer = RVAL2GOBJ(rb_receiver);
1405
1408
  } else if (RVAL2CBOOL(rb_obj_is_kind_of(rb_receiver, rb_cClass)) &&
1406
1409
  rb_respond_to(rb_receiver, rb_intern("gtype"))) {
Binary file
Binary file
Binary file
@@ -546,6 +546,7 @@ module GObjectIntrospection
546
546
  def load_method_info(info, klass, method_name)
547
547
  define_method(info, klass, method_name)
548
548
  define_equal_style_setter(info, klass, method_name)
549
+ define_inspect(info, klass, method_name)
549
550
  end
550
551
 
551
552
  def remove_existing_method(klass, method_name)
@@ -591,6 +592,14 @@ module GObjectIntrospection
591
592
  end
592
593
  end
593
594
 
595
+ def define_inspect(info, klass, method_name)
596
+ if method_name == "to_s" and info.n_args.zero?
597
+ klass.__send__(:define_method, "inspect") do ||
598
+ super().gsub(/\>\z/) {" #{to_s}>"}
599
+ end
600
+ end
601
+ end
602
+
594
603
  def load_function_infos(infos, klass)
595
604
  infos.each do |info|
596
605
  name = rubyish_method_name(info)
Binary file
Binary file
Binary file
@@ -13092,7 +13092,7 @@ linked against at application run time.</doc>
13092
13092
  <doc xml:space="preserve">The maximum value which can be held in a #guint8.</doc>
13093
13093
  <type name="guint8" c:type="guint8"/>
13094
13094
  </constant>
13095
- <constant name="MICRO_VERSION" value="1" c:type="GLIB_MICRO_VERSION">
13095
+ <constant name="MICRO_VERSION" value="3" c:type="GLIB_MICRO_VERSION">
13096
13096
  <doc xml:space="preserve">The micro version number of the GLib library.
13097
13097
 
13098
13098
  Like #gtk_micro_version, but from the headers used at
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gobject-introspection
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.1.6
4
+ version: 3.1.7
5
5
  platform: x86-mingw32
6
6
  authors:
7
7
  - The Ruby-GNOME2 Project Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-06-03 00:00:00.000000000 Z
11
+ date: 2017-07-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: glib2
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 3.1.6
19
+ version: 3.1.7
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 3.1.6
26
+ version: 3.1.7
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: test-unit
29
29
  requirement: !ruby/object:Gem::Requirement