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

Sign up to get free protection for your applications and to get access to all the features.
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